ユーザーフォームのテキストボックスが空欄の時にVBAメッセージを出す方法

エクセル検索
HOMEUserForm印刷画面ファイル図形
日付・時刻データセル関数VBA関数

オリジナルの入力フォームを作って使用していると、入力を忘れている項目があるのにコマンドボタンを押してしまい、空欄のリストが出来上がって困ったことありませんか?

このようなミスを防ぐために、入力漏れがあったら警告メッセージを表示させて次に進まないようにするExcel-VBAのメッセージ機能をご紹介します。

IFステートメントとメッセージ機能を組み合わせる

難しく考えず、単純なのです。

もしテキストボックスが空欄だったらメッセージを表示する、そうでなかったら(入力されていたら)処理を続けるってことをVBAコードで書けば解決しますよ。

ここでは、参考までに生まれた年をテキストボックス1に、誕生月をテキストボックス2に入力し、もしどちらかの入力漏れがあったらメッセージを表示するようにするVBAコードを記載します。

VBAコード

Private Sub CommandButton1_Click()
If TextBox1.Value = “” Or TextBox2.Value = “” Then
MsgBox “年・月を入力してください”
Else
Range(“A2”).Value = TextBox1.Text
Range(“B2”).Value = TextBox2.Text
End If
End Sub

解説
  1. コマンドボタン1がクリックされたら
  2. もしテキストボックス1が空欄、またはテキストボックス2が空欄だったら
  3. メッセージ表示で「年・月を入力してください」
  4. そうでなかったら
  5. セルA2の値はテキストボックス1の値を転記する
  6. セルB2の値はテキストボックス2の値を転記する
  7. IFステートメント終了
  8. マクロ終了

このようになります。

ポイントはテキストボックスが空欄の時を「””」と入力することで、エクセルIF関数でも””使いますよね、一緒です。

そして2つのテキストボックスどちらかが空欄でも困るので、Orで繋いでいます。

波乗りアヒル

この未入力の時にメッセージを出すVBAコードはエラー回避のために重要で使用頻度もかなり高いですよ。

関連記事

どこかにビューーン
ちょっとの工夫で往復無料の時代が来た!!

新着ページ

よく見られているページ

大容量無料ファイル転送サービス【ACデータ】 無料イラスト【イラストAC】

紅葉スポット

2024年5月11日からマイルと楽天ポイントとの相互交換提携開始!

交換レート0.5:1なので半分になってしまいますが、使い方次第で実質3倍の価値まで引き上げられる方法です。