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も見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
長い時間かかるマクロが実行中かどうかを表示したい
Excel(エクセル)
-
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
マクロを実行中に、msgbox を表示させたまま、ワークシートを上下左右に移動表示させたい。
Excel(エクセル)
-
6
マクロ実行時、ユーザーフォームにラベルのテキストが表示されません。
Access(アクセス)
-
7
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
8
エクセルVBAのIf,Then 構文でOr条件とAnd条件の結合方法?
Excel(エクセル)
-
9
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
10
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
11
VBAのWindowオブジェクトとWorkbookオブジェクトの違い
Visual Basic(VBA)
-
12
マクロ実行中のメッセージ表示
Excel(エクセル)
-
13
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
14
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
15
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
16
【ExcelVBA】全シートのセルの数式を値に変換する事は可能でしょうか?
Visual Basic(VBA)
-
17
開いているフォルダを全て閉じる、マクロを教えて下さい
Excel(エクセル)
-
18
もしセルが#N/A"なら~をする・・・には?"
Excel(エクセル)
-
19
Excelでセル参照したとき、書式も一緒に持ってくるには?
Windows Vista・XP
-
20
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「ご処理進めて頂きますようお...
-
【Excel】特定の文字を含むセル...
-
エクセルで、日付を入力すると...
-
EXCEL VBA マクロ 実行する度に...
-
メルカリのメルカードで買い物...
-
switch の範囲指定
-
VBAでループ内で使う変数名を可...
-
VBA SaveChanges 上書きされない
-
DoEventsがやはり分からない
-
UMLでの例外処理
-
VBの質問#if 0 then ってどう...
-
VB.NET Excelを読み込んでDataT...
-
C言語 b += a ? 1 : 0; の意味
-
リョウ・・・量?料?
-
VBAでセルに値が入力されるまで...
-
Select Case文でこのようなこと...
-
変数が""(空文字)かどうか判別...
-
findは動くがfindnextがマクロ...
-
アルミ アルマイト処理とアノ...
-
VB6,Ifから抜けるには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「ご処理進めて頂きますようお...
-
メルカリのメルカードで買い物...
-
エクセルで、日付を入力すると...
-
VBAでループ内で使う変数名を可...
-
【Excel】特定の文字を含むセル...
-
EXCEL VBA マクロ 実行する度に...
-
DoEventsがやはり分からない
-
UMLでの例外処理
-
月度は何て読みますか?
-
switch の範囲指定
-
VBの質問#if 0 then ってどう...
-
セルの値が0はクリアするマクロ
-
VB.NET Excelを読み込んでDataT...
-
Do~Loopした回数をカウントしたい
-
Loadイベント中にほかのイベン...
-
Select Case文でこのようなこと...
-
findは動くがfindnextがマクロ...
-
緊急です。 知り合いから50kgの...
-
リョウ・・・量?料?
-
理不尽、行き場のないイライラ...
おすすめ情報