桁数チェック
業務でよくある入力チェックのひとつが「桁数チェック」です。
例えば「社員番号は6桁」「郵便番号は7桁」「電話番号は10〜11桁」といった制約を満たしているかを確認します。
初心者向けに、コード例やテンプレートをかみ砕いて説明します。
基本の考え方
- 桁数チェックの目的:
- 入力値が指定された桁数かどうかを判定する
- 不正な桁数を防ぐことで業務エラーを回避する
- よく使う関数:
Len(文字列)→ 文字列の長さ(桁数)を返すIsNumeric(文字列)→ 数値かどうか判定
テンプレ1:固定桁数チェック(例:社員番号6桁)
Sub CheckFixedLength()
Dim val As String
val = Worksheets("Input").Range("A1").Value
If Len(val) = 6 And IsNumeric(val) Then
MsgBox "社員番号は正しい6桁です: " & val
Else
MsgBox "社員番号は6桁の数字で入力してください。"
End If
End Sub
VB- ポイント:
Len(val) = 6で桁数判定。IsNumeric(val)で数字かどうか確認。
テンプレ2:範囲桁数チェック(例:電話番号10〜11桁)
Sub CheckRangeLength()
Dim val As String
val = Worksheets("Input").Range("A2").Value
If IsNumeric(val) Then
If Len(val) >= 10 And Len(val) <= 11 Then
MsgBox "電話番号の桁数は正しいです: " & val
Else
MsgBox "電話番号は10〜11桁で入力してください。"
End If
Else
MsgBox "電話番号は数字で入力してください。"
End If
End Sub
VB- ポイント:
Len(val) >= 10 And Len(val) <= 11で範囲判定。- 数字チェックも組み合わせる。
テンプレ3:郵便番号チェック(7桁)
Sub CheckPostalCode()
Dim val As String
val = Worksheets("Input").Range("A3").Value
If Len(val) = 7 And IsNumeric(val) Then
MsgBox "郵便番号は正しい7桁です: " & val
Else
MsgBox "郵便番号は7桁の数字で入力してください。"
End If
End Sub
VB- ポイント:
- 郵便番号は「7桁の数字」で判定。
テンプレ4:文字列の桁数チェック(例:パスワード8文字以上)
Sub CheckPasswordLength()
Dim val As String
val = Worksheets("Input").Range("A4").Value
If Len(val) >= 8 Then
MsgBox "パスワードの文字数はOKです。"
Else
MsgBox "パスワードは8文字以上で入力してください。"
End If
End Sub
VB- ポイント:
- 数字だけでなく文字列の長さチェックにも使える。
例題で練習
'例1:社員番号が6桁の数字かチェック
'例2:電話番号が10〜11桁かチェック
'例3:郵便番号が7桁の数字かチェック
'例4:パスワードが8文字以上かチェック
VB初心者向けポイント
- Len関数が桁数チェックの基本
- IsNumericと組み合わせると数字入力の確認ができる
- 固定桁数と範囲桁数の両方に対応可能
- 文字列の長さチェックにも応用できる
- エラーメッセージは分かりやすくする → ユーザーが修正しやすい
👉 この「桁数チェックテンプレ」を覚えておけば、Excel VBAで 社員番号・電話番号・郵便番号・パスワードなどの入力桁数を安全に確認し、業務エラーを防ぐ仕組み を簡単に作成できます。
