Windows10 Excel2016
入力シートにデータを入力し、
ボタンクリックでマクロ実行
・実行内容(ざっくり)
1.画面更新、再計算、イベント、アラーム無効
2.Workbooks(別ファイル)を開く
3.Workbooks(別ファイル).sheet1の表にデータを転記
4.Workbooks(別ファイル).sheet1の表を、実行ファイルのsheet2の表にコピペ
5.Workbooks(別ファイル)を保存して閉じる
6.印刷プロシージャ呼び出し
6-1.印刷シート1にデータを転記して印刷
6-2.印刷シート2にデータを転記して印刷
6-3.印刷シート3にデータを転記して印刷
7.入力シートに戻り、A1を選択
8.画面更新、再計算、イベント、アラーム有効
9.msgbox 完了しました
・不具合点
マクロ終了後の入力シートの1~3行目のセルに、印刷シート1のセルが写ってます。
写っているだけで、そのセルを選択すると数式バーには入力シートの値が出ています。
ボタンも映らなくなっていますが、マウスを合わせるとカーソルが変わり、クリック出来ます。
入力シートのChangeEventが発動すると、セルの表示は元に戻るが、ボタンは見えないままです。
※ChangeEventには、
1.画面更新など無効
2.入力データをクリア(白紙に戻す)
3.画面更新など有効
手動で他のシートへ移動して、入力シートに戻ると正しく表示されます。
画面停止でセルが崩れた?のかと思いますが、
どこを直せば直るのかが分かりません。
何かわかる方いましたら宜しくお願いします。
No.2ベストアンサー
- 回答日時:
こんばんは、
事象を再現する事が出来ないので、すべて想像の範疇で
参考になるか分かりませんが、、
VBAコード的には
ScreenUpdatingは正しくTRUEされているとして、
9.msgbox 完了しました の後に明示的にSheetObject、RangeObjectを
Activateするとどうでしょう?
また、ScreenUpdatingではなくApplication.Visible = Falseで実行は・・・
印刷プロシージャがあるとの事で、難しいですかね。
印刷での不具合でイメージが残っているのなら、
プリンタードライバーとの不具合も想像できます。
仮想プリンターで実行した場合、どのようになるか検証する事も考えられます。同様の事象が発生しない場合は、プリンタードライバーを最新のものにアップデートしてみてください。
さらに、オプションの詳細設定、ハードウエア グラフィック アクセラレータの設定が無効になっていないか確認してみてください。(他の不具合解消の為、無効になっている場合は、現状維持で)
私に起こった時には、取り敢えず、この辺を確認、検証してみます。
お返事ありがとうございます。
画面更新など有効にした後に、入力シートをActiveにしましたが、解決はしませんでした。
ですが、VisibleをApplicationではなく、各印刷シートにかけてみましたら上手く行きました。
Sub 印刷プロシージャ
各印刷シートに対して
Visible=True→印刷→Visible=False
ScreenUpdating=True
End sub
実行マクロに戻って
ScreenUpdating=True
入力シート.Active
Msgbox完了
助かりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
夏が終わったと感じる瞬間って、どんな時?
まだまだ暑い今日この頃。 しかしながら、もう夏は終わっている!……はず。 あなたが思う「夏が終わった!」エピソードを教えてください。
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
メモのコツを教えてください!
メモを取るのが苦手です。 急いでメモすると内容がごちゃごちゃになってしまったり、ひどいときには全く読めない時もあります。
-
【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
【お題】 ・世界最古のコンビニについて知ってる事を教えてください
-
「お昼の放送」の思い出
小学校から中学校、ところによっては高校まで お昼休みに校内放送で、放送委員が音楽とかおしゃべりとか流してましたよね。 最近は自分でもラジオができるようになって、そのクオリティもすごいことになっていると聞きます。
-
excelでVBA実行後に画面に残るゴミを無くしたい。
Excel(エクセル)
-
VBA Excel セル残像が残る
Excel(エクセル)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
マクロ実行後、表示がおかしくなる
Excel(エクセル)
-
6
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
7
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
8
Refreshメソッドの使い方
Visual Basic(VBA)
-
9
screenupdatingが機能しなくて困ってます
Visual Basic(VBA)
-
10
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
11
エクセルでファイルを閉じても空ウィンドウが残ります
Excel(エクセル)
-
12
エクセルのマクロ機能で前のシートに返るVBAはどうかくか
Excel(エクセル)
-
13
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
-
14
VBA コードを実行すると画面が真っ白になる
Visual Basic(VBA)
-
15
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
16
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
17
VBAでユーザーフォームの表示を確認
Visual Basic(VBA)
-
18
エクセルVBA 作業後に選択範囲を解除する方法
Excel(エクセル)
-
19
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
20
フォントの大きさ
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
EXCELのSheet番号って変更でき...
-
Changeイベントで複数セルへの...
-
【VBA】特定の条件でセルをコピー
-
グラフマクロで系列を変数にす...
-
マクロ実行後に別シートの残像...
-
VBAのグラフに違うシートの...
-
VBA別シートの最終行の次行へ転...
-
ExcelのVBマクロを、バックグラ...
-
複数シートの複数列に入力され...
-
VBA 実行時エラー1004 rangeメ...
-
Count Ifのセルの範囲指定に変...
-
ExcelのVBAでグループ分けしたい
-
ExcelのVBA ListBox.RowSource...
-
VBA 空白行に転記する
-
VBA 別ブックからの転記の高速...
-
Excelマクロで不要な行を繰り返...
-
楽天RSSからエクセルVBAを使用...
-
VBAでのコピーについてです。
-
Excel VBA マクロ For Next
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロの「SaveAs」でエラーが...
-
VBA 空白行に転記する
-
EXCELのSheet番号って変更でき...
-
マクロ実行後に別シートの残像...
-
VBA 実行時エラー1004 rangeメ...
-
Count Ifのセルの範囲指定に変...
-
Changeイベントで複数セルへの...
-
VBA別シートの最終行の次行へ転...
-
ExcelのVBマクロを、バックグラ...
-
VBA 別ブックからの転記の高速...
-
【VBA】特定の条件でセルをコピー
-
100万件越えCSVから条件を満た...
-
楽天RSSからエクセルVBAを使用...
-
VBAで変数の数/変数名を動的に...
-
Excel2013で切り取り禁止
-
FindNextがうまくいかない
-
Excel VBA オートフィルターで...
-
Unionでの他のシートの参照につ...
-
グラフマクロで系列を変数にす...
-
複数シートの複数列に入力され...
おすすめ情報
お返事ありがとうございます。
マクロの最初に、画面更新~無効(Application.ScreenUpdating=False)しているので、画面は入力シートまま動きません。
ただしファイルを開く閉じるの際にちらつきはあります。
マクロ終了時に、画面更新~有効にして終わらせてます。