VBA初心者向け!確認メッセージを表示して処理を分岐する方法

VBA初心者向け!確認メッセージを表示して処理を分岐する方法

こんにちは!大阪市住之江区に拠点を置く会社『縁紡ぐ』の稲垣です。

当社は、Excel、ACCESS、RPAなどのシステム開発や既存ツールを使った業務効率化の提案、また、ITスキルアップのための教育に力を入れています。効率的なビジネス運営を目指している企業様、ITスキルの向上を図りたい企業や個人の方に、最適なご提案をさせていただきます。業務プロセスの改善とITスキルアップをサポートし、共に成長するパートナーでありたいと考えています。

今回は、VBA初心者の方向けに「確認メッセージを表示して処理を分岐させる方法」とその活用例をご紹介します

目次

 確認メッセージとは?

確認メッセージとは、ユーザーに対して「この操作を実行してもよいですか?」といった確認を促すメッセージボックスのことです。これにより、ユーザーが意図しない操作を防ぐことができます。

 MsgBox関数の基本

VBAで確認メッセージを表示するには、MsgBox関数を利用します。MsgBox関数は、ユーザーにメッセージを表示し、その応答(Yes/Noなど)を取得するためのものです。

MsgBox(メッセージ, ボタンの種類, タイトル)

メッセージ: 表示するメッセージ(文字列)
ボタンの種類: 表示するボタンの種類(省略可)
タイトル: メッセージボックスのタイトル(省略可)

確認メッセージを表示するコード例

基本的な確認メッセージを表示するコードの例です。

Sub 確認メッセージを表示()
    Dim ユーザーの応答 As VbMsgBoxResult
    
    ' メッセージボックスを表示する
    ユーザーの応答 = MsgBox("この操作を実行しますか?", vbYesNo + vbQuestion, "確認")
    
    ' ユーザーの応答に応じて処理を分岐する
    If ユーザーの応答 = vbYes Then
        MsgBox "操作を実行します。", vbInformation, "情報"
        ' 実際の操作をここに記述する
    ElseIf ユーザーの応答 = vbNo Then
        MsgBox "操作をキャンセルしました。", vbInformation, "情報"
    End If
End Sub

このコードでは、「この操作を実行しますか?」というメッセージボックスが表示され、ユーザーが「はい」を選択した場合は操作を実行し、「いいえ」を選択した場合は操作をキャンセルします。よく目にするパターンではないでしょうか。

実際の活用例

確認メッセージは、さまざまな場面で活用できます。例えば、重要なデータを削除する前に確認メッセージを表示することで、誤操作を防ぐことができます。やばーい!消してしまった😭ってことを防げます。

Sub データ削除の確認()
    Dim ユーザーの応答 As VbMsgBoxResult
    
    ' 削除確認メッセージを表示
    ユーザーの応答 = MsgBox("本当にデータを削除しますか?", vbYesNo + vbExclamation, "注意")
    
    If ユーザーの応答 = vbYes Then
        ' データ削除の処理を実行
        MsgBox "データを削除しました。", vbInformation, "情報"
    Else
        MsgBox "データ削除をキャンセルしました。", vbInformation, "情報"
    End If
End Sub

まとめ

VBAで確認メッセージを表示する方法をご紹介しました。確認メッセージを適切に活用することで、ユーザーの誤操作を防ぎ、プログラムの安全性と変なデータが作成されること防止することができます。初心者の方も、ぜひこの方法を試してみてください。


これで、VBA初心者の方でも簡単に確認メッセージを表示させることができるようになりましたね。今後もVBAを使って、さまざまな便利なツールを作成してみましょう!

記事を書いた人

稲垣

  • Excel、ACCESSでのシステム開発が得意
  • ITスキルを共有し実践的に学びながら成長する人を見るのが幸せ
  • 自家焙煎するほどのコーヒー好き
  • 使用言語 VBA、Python、Javascript、Java、HTML、CSS etc.
  • 保有資格 Kintoneアソシエイト、日商簿記検定2級、マンション管理士、管理業務主任者、情報セキュリティマネジメント、ExcelVBA etc.
  • 業務フロー図の作成や業務時間分析を通して、効率化ポイントを探る人
  • お客様にとって本当に良いことかを第一に考える人
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次