エクセルでメッセージボックスを利用して「〇〇しますか?」と問うた時に、「はい」「いいえ」を選択できますが、固定した文章ではなくセルの値によって質問内容が変更したいと思ったことありませんか?
実は簡単で文章の部分をセル番地に指定することで、自由にメッセージボックスの文章を変えることができる方法をご紹介します。
msg = MsgBox(セル番地&文字)
エクセルVBAのメッセージ機能は、単純に「OK」返答する”MsgBox”と、「はい」「いいえ」などで選択肢がある”msg=MsgBox”があります。
ここでは、セルの値を文字を組み合わせて「はい」「いいえ」の選択肢を選ぶことで次の動作を誘導するVBAコードをご紹介します。
VBAコード
Private Sub CommandButton1_Click()
msg = MsgBox(Range(“A1”) & “日目ですね”, Buttons:=vbYesNo + vbQuestion)
If msg = vbYes Then
Unload UserForm1
UserForm2.Show
End If
End Sub
解説
- コマンドボタン1がクリックされたら
- メッセージ「セルA1の値」と「日目ですね」を組み合わせて表示して、「はい」「いいえ」ボタンを表示する
- もし「はい」が選択されたら
- ユーザーフォーム1を閉じる
- ユーザーフォーム2を表示する
- Ifステートメント終了
- マクロ記録終了
波乗りアヒル
このようにRangeと&と文字を組み合わせると、意外と簡単にできるようになり、日数が増えたとしてセルA1の数字が変われば、メッセージの表示が2日目、3日目と自動的に変化してくれますよ。
関連記事
-
ラベル
2つのセルの値を足し算など加減乗除してラベル名に表示させるVBA
ユーザーフォームに配置したラベルの文字をプロパティのキャプションで指定するのではなく、セルの値を取得して表示させたいことありませんか? そしてさらに、2つのセ… -
VBA関数
エクセルVBAのメッセージ文章をセルの値にリンクさせる簡単な方法
エクセルでメッセージボックスを利用して「〇〇しますか?」と問うた時に、「はい」「いいえ」を選択できますが、固定した文章ではなくセルの値によって質問内容が変更… -
VBA関数
もし~だったらの条件分岐エクセル関数IFをVBAで代用する方法
条件分岐というと難しいですが、もし~だったら、そうでなかったらってよくありませんか? そしてエクセル関数でも使うIF関数をエクセルVBAでも高頻度で使うので、基本… -
VBA関数
エクセルINT関数をVBAで小数点以下切り捨てを繰り返し処理方法
エクセル関数を使って小数点以下を切り捨てする作業をVBAを使って複数行一括処理したいと思ったことありませんか? Application.RoundDownと繰り返し処理を合わせて使え…
紅葉スポット
-
復元された平家の里へ平清盛像や茅葺屋根と水の郷で温泉と紅葉コラボ
【紅葉見頃】10月中旬~11月中旬 日光市の北部で鬼怒川温泉のさらに奥地にある湯西川温泉には平家落人伝説があり、秘話・伝説などが現代に伝える役目を果たすために「… -
那須塩原駅からバスで紅葉名所のもみじ谷大吊橋へ滞在時間60分
【紅葉見頃】10月下旬~11月中旬 塩原ダムに架かる大吊橋の周辺にもみじが植えられていて紅葉の季節になると真っ赤に染まるので、もみじ谷大吊橋という名で那須塩原市… -
乗り鉄必見の紅葉列車でわたらせ渓谷鉄道車窓の紅葉景色へ
【紅葉見頃】11月上旬~11月下旬 旧国鉄・足尾線を引き継いだわたらせ渓谷鉄道は、渡良瀬川沿いを走るローカル線で渓谷沿いの紅葉がとても綺麗に見ることができるので… -
奥日光湯滝や湯ノ湖へ東武バスの湯元温泉フリーパス終点の観光名所へ
【紅葉見頃】 10月中旬~10月下旬 紅葉時期の日光なのに空いている穴場スポットの湯滝や湯ノ湖をご存知ですか? 中禅寺湖周辺から戦場ヶ原を通り過ぎてさらに奥へ進む… -
縁起だるま発祥の少林山達磨寺境内の真っ赤に染まる紅葉景色へ
【紅葉見頃】11月下旬~12月上旬 高崎市内循環バス「ぐるりん」バスのフリーエリア内にあるので、縁起だるま発祥の少林山達磨寺へ紅葉の時期になったら訪れてみてはい… -
花園渓谷の花園神社紅葉ライトアップへ磯原駅から観光周遊バスで行く
茨城県の最北端にある北茨城市でもう少し北上すれば福島県という位置なので、東京からだとかなり遠いですが、山間部の花園花貫県立自然公園という名の通り大自然の中を…