
EXCELの1つのブックに2つのマクロを組んでいます。
普段は1つ目のマクロを実行したあと、処理結果を確認してから
2つ目のマクロを動かしています。
※1つ目のマクロ終了時に、完了のメッセージボックスが出ます。
この2つのマクロを、自動で処理するためのマクロを
作ろうとしていて、
1.1つ目のマクロを実行
2.処理完了のメッセージボックスのOKをクリック
3.2つ目のマクロを実行
という流れで処理しようと思っています。
今、メッセージボックスのOKボタンをVBAでクリックする方法がわからなくて
調べているのですが、お分かりになる方いらっしゃいましたら
教えていただけませんでしょうか。
例えば、1つフラグを作って、そのフラグが立っている時は
メッセージボックスを出さないような制御は出来るのですが、
今回は、メッセージボックスをクリックする方法が
知りたいと思っています。
よろしくお願いいたします。
No.5
- 回答日時:
下記のようにしてみてはいかがでしょう
Sub Macro1() ' マクロ1
Macro1Auto
End Sub
' マクロ1の実行内容をこちらへ移す
Sub Macro1Auto( optional flag as Boolean = false )
' 1つめのマクロ
' メッセージボックスをフラグで制御
if flag = false then
MsgBox "確認メッセージ"
end if
End Sub
' 自動でやる場合は TrueをセットしてMacro1Autoをコール
Sub CallMAcro1Auto()
Macro1Auto True
End Sub
No.4
- 回答日時:
小生も質問を一読して、#3のご指摘と同じ感想を持ちました。
自動でプログラムでOKにするなら、MsgBoxのコードを,その入れなければよいのでは。
利用者に知らせるだけなら他の表示だけのコントロールもあり、表示が見る人にうるさければ、一定時間で消えるとかの方に頭が行くような気がします。
結局、質問の真意が説明(表現)できてないのでは。
No.3
- 回答日時:
diashunです。
質問者さんの意図がいま一つ理解できないのですが・・・。
そもそもMsgboxはある処理の結果がOKかNGかをオペレータに判断させるためのもので、これをプロシージャ内でOK(クリック?)とさせることに意味があるのでしょうか?常にOKと判断するなら、そのMsgboxを表示する意味はないのではないでしょうか?
#2のn-junの参考URLのWSH(ウィンドウズスクリプティングホスト)を使えば、一定時間後にMsgboxを自動で閉じることも確かにできますが、わざわざMsgboxを表示する意味はないと思います。
意図が不明ですみませんでした。
チェックしなくてもいいケースと、しないといけないケースがあって
チェックしなくてもいいケースの場合は、
スケジュールを組んでBATのように自動で全て動かしたいと思っていました。
わざわざメッセージボックスがないPGを分けて作るのも管理しにくく
なりますし、と思っていましたが
フラグを追加してBAT処理の場合はメッセージボックスを表示しない方が
良さそうですね。
ありがとうございました。
No.2
- 回答日時:
こういう方法もあるんですね。
ただ、普段は1つずつチェックしながら実行しているので
自動的に閉じてしまうのも困るんです。
でも参考になりました。
ありがとうございますm(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク
- ExcelのVBAコードについて教えてください。
- ExcelのVBAコードについて教えてください。
- 【マクロ】マクロボタンをクリックしたら、セルに OK と表示される
- エクセルのマクロについて教えてください。
- Excelのマクロについてご教授ください
- vbaエクセルマクロについて あるデータを作成し、デスクトップに.xlsx形式で保存するマクロを作成
- マクロで謎の現象が起きていて困ってます。 エクセルで作ったボタンを押すとマクロが動いて処理をしてくれ
- vbaエクセルマクロについて あるデータを作成し、デスクトップに.xlsx形式で保存するマクロを作成
- VBA ユーザーフォーム
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
VBA ポップアップが表示されたら常に「はい」を選択したい
Access(アクセス)
-
VBScriptでMsgBoxのYesNoボックスを自動的にクリックしたい
その他(プログラミング・Web制作)
-
-
4
VBAにて別ワークブック上の実行したマクロのメッセージボックスを操作
Visual Basic(VBA)
-
5
VBA メッセージボックスを自動で消したい
Visual Basic(VBA)
-
6
Excel vbaで別ブックのコマンドボタンをクリック
Visual Basic(VBA)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
9
Application.Runエラー(1004)
Excel(エクセル)
-
10
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
11
VBAでIEを操作、ポップアップされた画面の処理(Enter)を行いたい
Visual Basic(VBA)
-
12
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
13
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
14
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
15
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
16
名前をつけて保存した後、元のファイルに戻るには
その他(コンピューター・テクノロジー)
-
17
《エクセルVBA》「他の人が該当ファイルを使用中の場合」の処理
Excel(エクセル)
-
18
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
19
マクロの「SaveAs」でエラーが出るのを解消したいです(再)
Visual Basic(VBA)
-
20
エクセルのVBAで作成したmsgboxを自動にOKにする方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のPCだけ動作しないVBAマク...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
Excel・Word リサーチ機能を無...
-
エクセルで特定の列が0表示の場...
-
エクセルに張り付けた写真のフ...
-
#defineの定数を文字列として読...
-
ピボットテーブルでの毎回可変...
-
一つのTeratermのマクロで複数...
-
ExcelのVBA。public変数の値が...
-
Excel VBAからAccessマクロを実...
-
ExcelVBAでPDFを閉じるソース
-
TeraTermマクロの文字列結合
-
TERA TERMを隠す方法
-
Sub ***( ) と Private Sub ***...
-
EXCELのVBAでRange("A1:C4")を...
-
MS Office Word のマクロで行列...
-
マクロ実行時、ユーザーフォー...
-
特定文字のある行の前に空白行...
-
VB初心者です。メールから添付...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定のPCだけ動作しないVBAマク...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
Excel・Word リサーチ機能を無...
-
エクセルで特定の列が0表示の場...
-
一つのTeratermのマクロで複数...
-
エクセルに張り付けた写真のフ...
-
Excel VBAからAccessマクロを実...
-
ExcelVBAでPDFを閉じるソース
-
ExcelのVBA。public変数の値が...
-
VisualStudio2022をマクロみた...
-
Excel マクロでShearePoint先の...
-
#defineの定数を文字列として読...
-
エクセルのマクロについて教え...
-
自動VBAマクロって会社の中で禁...
-
TERA TERMを隠す方法
-
マクロについてのご相談です。
-
マクロ実行時、ユーザーフォー...
-
EXCELのVBAでRange("A1:C4")を...
-
TeraTermマクロの文字列結合
おすすめ情報