search
他カテゴリ

「実行しますか?」確認して実行させたい。【Excelマクロ講座】

IMAKARA's icon'
  • IMAKARA
  • 2024/01/20 15:01

マクロで動かした後は元に戻せません。
保存しないぐらいしか対応方法がないので、実行前の確認は結構重要です。

Content image

今回はそんな実行確認用ダイアログの出し方。
↓のVBA文はそのままコピーして使えますし、作ったマクロのSubのひとつ下の行に差し込むのも良いでしょう、その場合はSubとEnd Subはコピーせず中身だけコピーするようにしましょう。

Content image

ちなみに操作記録をしてマクロを作成した時はコメント行として3行か4行あると思うのでその下に中身を貼り付けて動作を確認してみましょう。

「はい」「いいえ」の後もメッセージを表示。

Sub execonfirmYN()

Dim ALT As VbMsgBoxResult
ALT = MsgBox("実行しますか?", vbYesNo + vbExclamation, "Exe confirm")
If ALT = vbYes Then
MsgBox "実行しました。"
End If
If ALT = vbNo Then
MsgBox "中止しました。"

End Sub

「はい」の後にだけメッセージを表示。

Sub execonfirmY()

Dim ALT As VbMsgBoxResult
ALT = MsgBox("実行しますか?", vbYesNo + vbExclamation, "Exe confirm")
If ALT = vbYes Then
MsgBox "実行しました。"
End If

End Sub

実行確認のみ。

Sub execonfirm()

Dim ALT As VbMsgBoxResult
ALT = MsgBox("実行しますか?", vbYesNo + vbExclamation, "Exe confirm")

End Sub

・・

・・・

Dimの後のALTはその後の動きを管理する為の変数です。

メッセージボックス関数の中のタイトル"Exe confirm"の部分に実行する内容を入れておくとより親切ですね、ついでに使えそうなボタン引数も残しておきます。

vbOKOnly 'OKボタンのみを表示。
vbOKCancel 'OKとキャンセルボタンを表示。
vbYesNoCancel 'はい、いいえ、キャンセルを表示。
vbYesNo 'はい、いいえを表示。
vbQuestion 'ハテナアイコンを表示。
vbExclamation 'ビックリマークを表示。
vbDefaultButton1 '数字で既定ボタンの設定。

他にもありますので興味がある方は調べてみてください。
引数を複数追加する場合は

, vbYesNo + vbQuestion ,

のように引数の間に+を付けましょう。

メッセージボックス関数

MsgBox (メインメッセージ,ボタン(省略可),タイトルバー(省略可),ヘルプテキスト(省略可),ヘルプテキストの補助(省略可))

という形になっており、

MsgBox("メッセージ")

というように使う事が出来ます。
その他は省略可能ですが、ヘルプテキストを入れる場合はセットでヘルプテキストの補助(context)が省略できなくなるので注意。

画面遷移を止めている場合でも問題なし

画面移動の多いマクロを組む場合によく使う

Application.ScreenUpdating = False と True

で画面表示を止める場合でも気にせず使って大丈夫です、スクリーンアップデーティングの中でも外でもダイアログは表示してくれます。

マクロも上手に使って快適なExcelライフを!

ではでは。

Supporter profile iconSupporter profile icon
Article tip 2人がサポートしています
獲得ALIS: Article like 35.59 ALIS Article tip 27.20 ALIS
Article registration Article registration
IMAKARA's icon'
  • IMAKARA
  • @IMAKARA
ゆっくりまったりのんびり、自分が出せる最高速を日々楽しんでいます。

投稿者の人気記事
コメントする
Loading...
コメントする
こちらもおすすめ!
Eye catch
ビジネス

海外企業と契約するフリーランス広報になった経緯をセルフインタビューで明かす!

Semapho 2021/09/14
Like token Tip token
16.10 ALIS
Eye catch
クリプト

Bitcoinの価値の源泉は、PoWによる電気代ではなくて"競争原理"だった。

CryptoChick 2020/03/07
Like token Tip token
159.32 ALIS
Eye catch
トラベル

わら人形を釘で打ち呪う 丑の刻参りは今も存在するのか? 京都最恐の貴船神社奥宮を調べた

こすもす 2021/08/07
Like token Tip token
486.35 ALIS
Eye catch
他カテゴリ

オランダ人が語る大麻大国のオランダ

Jimmy 2018/12/21
Like token Tip token
46.20 ALIS
Eye catch
トラベル

無料案内所という職業

bansu 2019/06/11
Like token Tip token
84.20 ALIS
Eye catch
他カテゴリ

警察官が一人で戦ったらどのくらいの強さなの?『柔道編』 【元警察官が本音で回答】

ふたひい@web3 2020/05/16
Like token Tip token
114.82 ALIS
Eye catch
他カテゴリ

警察官が一人で戦ったらどのくらいの強さなの?『柔道編』 【元警察官が本音で回答】

ふたひい@web3 2020/05/16
Like token Tip token
114.82 ALIS
Eye catch
クリプト

NFT解体新書・デジタルデータをNFTで販売するときのすべて【実証実験・共有レポート】

otakucoin 2021/03/29
Like token Tip token
121.79 ALIS
Eye catch
グルメ

バターをつくってみた

モミジ 2021/02/18
Like token Tip token
127.90 ALIS
Eye catch
クリプト

Bitcoin史 〜0.00076ドルから6万ドルへの歩み〜

大田コウキ 2021/04/06
Like token Tip token
947.13 ALIS
Eye catch
他カテゴリ

SASUKEオーディションに出た時の話

Taka 2021/01/22
Like token Tip token
35.87 ALIS
Eye catch
他カテゴリ

京都のきーひん、神戸のこーへん

yamaeigh 2020/02/15
Like token Tip token
12.10 ALIS