Excel VBA 逆引き集 | 入力チェック

Excel VBA
スポンサーリンク

入力チェック

業務でよく使うのが「入力チェック」。
ユーザーが入力した値が正しいかどうかを確認し、間違っていたらエラーを防ぐ仕組みです。
初心者向けに、よくあるパターンをテンプレート化して説明します。


基本の考え方

  • 入力チェックの目的:
    • 不正な値を防ぐ
    • エラーを未然に回避する
    • ユーザーに分かりやすくメッセージを返す
  • よくあるチェック項目:
    • 空欄チェック
    • 数値チェック
    • 範囲チェック
    • 日付チェック
    • 文字数チェック

テンプレ1:空欄チェック

Sub CheckEmpty()
    Dim val As Variant
    val = Worksheets("Input").Range("A1").Value
    
    If IsEmpty(val) Or val = "" Then
        MsgBox "入力が空です。値を入力してください。"
    Else
        MsgBox "入力値: " & val
    End If
End Sub
VB
  • ポイント:
    • IsEmpty または ="" で空欄判定。
    • 入力必須項目に使う。

テンプレ2:数値チェック

Sub CheckNumeric()
    Dim val As Variant
    val = Worksheets("Input").Range("A2").Value
    
    If IsNumeric(val) Then
        MsgBox "数値として有効です: " & val
    Else
        MsgBox "数値を入力してください。"
    End If
End Sub
VB
  • ポイント:
    • IsNumeric で数値判定。
    • 数値以外ならエラーメッセージ。

テンプレ3:範囲チェック(例:1~100)

Sub CheckRange()
    Dim val As Double
    val = Worksheets("Input").Range("A3").Value
    
    If IsNumeric(val) Then
        If val >= 1 And val <= 100 Then
            MsgBox "範囲内です: " & val
        Else
            MsgBox "1~100の範囲で入力してください。"
        End If
    Else
        MsgBox "数値を入力してください。"
    End If
End Sub
VB
  • ポイント:
    • 数値判定+範囲判定を組み合わせる。

テンプレ4:日付チェック

Sub CheckDate()
    Dim val As Variant
    val = Worksheets("Input").Range("A4").Value
    
    If IsDate(val) Then
        MsgBox "日付として有効です: " & val
    Else
        MsgBox "正しい日付を入力してください。"
    End If
End Sub
VB
  • ポイント:
    • IsDate で日付判定。
    • 日付入力欄に使う。

テンプレ5:文字数チェック(例:10文字以内)

Sub CheckLength()
    Dim val As String
    val = Worksheets("Input").Range("A5").Value
    
    If Len(val) <= 10 Then
        MsgBox "文字数OK: " & val
    Else
        MsgBox "10文字以内で入力してください。"
    End If
End Sub
VB
  • ポイント:
    • Len で文字数判定。
    • 入力制限に便利。

例題で練習

'例1:必須項目が空欄かチェック
'例2:数値入力欄に文字が入っていないかチェック
'例3:1~100の範囲内かチェック
'例4:日付入力欄が正しいかチェック
'例5:文字数制限を超えていないかチェック
VB

初心者向けポイント

  • 入力チェックは「事前防御」 → エラーを未然に防ぐ
  • IsEmpty / IsNumeric / IsDate / Len が基本ツール
  • 複数条件を組み合わせると強力
  • メッセージを分かりやすくする → ユーザーが修正しやすい

👉 この「入力チェックテンプレ」を覚えておけば、Excel VBAで ユーザー入力を安全に扱い、業務エラーを防ぐ仕組み を簡単に作成できます。

タイトルとURLをコピーしました