
https://koukimra.com/archives/1866
上記を参考に、図形を使ってのマクロ処理中のメッセージを表示したいと考えています。
コード内に
If MsgBox("実行します。よろしいですか?", vbOKCancel) = vbOK Then
Worksheets(1).Shapes("macro_msg2").Visible = True
Application.Wait Now + TimeValue("00:00:01")
★処理コードを記載★
Worksheets(1).Shapes("macro_msg2").Visible = False
(☆下記画面処理コード挿入)
MsgBox "作業が終了しました。"
Else
Exit Sub
End If
このように記載をしています。
ステップインでの処理を確認する際はmacro_msg2の図形がきちんと表示されますが、
通常処理を行うと、図形が表示されないままMsgboxの処理にたどり着きます。
1秒の待ち時間を5秒としても同様です。
処理に当たり、画面のちらつき防止等で
Application.EnableEvents = False
Application.ScreenUpdating = False
Application.DisplayAlerts = False
こちらを上記処理の☆で入れていますが、図形の表示とこれらの有無は関係なさそうです。
処理速度が速すぎるための結果なのか、判断がつきません。
どこが原因でしょうか?
詳しい方、教えてください。
No.1ベストアンサー
- 回答日時:
こんばんは
Shapeが表示されないのは、画面が更新されないからでしょう。
>Worksheets(1).Shapes("macro_msg2").Visible = True
の直後に
Application.ScreenUpdating = True
DoEvents
を入れてみてください。
(DoEvents なしでもOKと思いますが、念のため)
回答ありがとうございます。
2つのシートのうち、1つは上記のDoEventsを使うことでうまくいきました。
もう一つのシートは更新されずに表示されません。
DoEventsの後に
Msgboxで適当な文言や処理を入れると、きちんと表示されますが…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/06/19 10:08
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
このQ&Aを見た人はこんなQ&Aも見ています
-
マクロを実行中に、msgbox を表示させたまま、ワークシートを上下左右に移動表示させたい。
Excel(エクセル)
-
Excel-VBAの「しばらくお待ちください」のダイアログが自動的に閉じない
Excel(エクセル)
-
マクロ実行中のメッセージ表示
Excel(エクセル)
-
-
4
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
5
長い時間かかるマクロが実行中かどうかを表示したい
Excel(エクセル)
-
6
マクロ実行時、ユーザーフォームにラベルのテキストが表示されません。
Access(アクセス)
-
7
UserForm
Visual Basic(VBA)
-
8
Refreshで落ちる
Visual Basic(VBA)
-
9
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
10
エクセルマクロで「1」を「01」に変換したい
Excel(エクセル)
-
11
ExcelのVBAでフォームが表示されない
Excel(エクセル)
-
12
メッセージボックスを前面に表示させるには?
Visual Basic(VBA)
-
13
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
14
Excel ユーザーフォームをモードレスで表示後
Visual Basic(VBA)
-
15
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
-
16
VBAにて別ワークブック上の実行したマクロのメッセージボックスを操作
Visual Basic(VBA)
-
17
エクセルのvbaにて thisworkbookに記載のマクロを他のブックにマクロにて自動コピー出来る
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
VBAでループ内で使う変数名を可...
-
switch の範囲指定
-
【Excel】特定の文字を含むセル...
-
DoEventsがやはり分からない
-
UMLでの例外処理
-
VB.NET Excelを読み込んでDataT...
-
VBの質問#if 0 then ってどう...
-
EXCEL VBA マクロ 実行する度に...
-
Do~Loopした回数をカウントしたい
-
月度は何て読みますか?
-
VBAでCOPYを繰り返すと、処理が...
-
インタラクティブの反対語は?
-
セックスレスの既婚女性は自慰...
-
COBOLのEVALUATE文について
-
RPGプログラムの*HIVALについて
-
フォーム上のすべてのTextBoxを...
-
findは動くがfindnextがマクロ...
-
vba 空のデータをSplitする時の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
【Excel】特定の文字を含むセル...
-
VBAでループ内で使う変数名を可...
-
メルカリのメルカードで買い物...
-
月度は何て読みますか?
-
UMLでの例外処理
-
EXCEL VBA マクロ 実行する度に...
-
セックスレスの既婚女性は自慰...
-
switch の範囲指定
-
インタラクティブの反対語は?
-
Loadイベント中にほかのイベン...
-
Do~Loopした回数をカウントしたい
-
VBの質問#if 0 then ってどう...
-
DoEventsがやはり分からない
-
お家デートをしててハグを長い...
-
findは動くがfindnextがマクロ...
-
リョウ・・・量?料?
-
生活保護受給者は性欲をどんな...
-
iD
おすすめ情報