ここでは Offset × 条件分岐 を組み合わせて「セルの値を検証し、結果を隣列や下段に出力する」基本テンプレをまとめます。
入力チェック・エラー検出・判定ラベル付与など、実務で頻出する検証処理を一括整理しました。
基本パターン 10選
1. 数値判定(数値以外はエラー)
Dim r As Range
For Each r In Range("A2:A20")
If IsNumeric(r.Value) Then
r.Offset(0, 1).Value = "OK"
Else
r.Offset(0, 1).Value = "ERR"
End If
Next r
VB👉 数値かどうかを判定し、右隣に「OK/ERR」を出力。
2. 空白判定(空欄なら警告)
Dim r As Range
For Each r In Range("B2:B20")
If IsEmpty(r.Value) Then
r.Offset(0, 1).Value = "空白"
End If
Next r
VB👉 空白セルを検出して右隣に「空白」と記録。
3. 範囲外判定(閾値チェック)
Dim r As Range
For Each r In Range("C2:C20")
If r.Value < 0 Or r.Value > 100 Then
r.Offset(0, 1).Value = "範囲外"
End If
Next r
VB👉 値が 0〜100 の範囲外なら「範囲外」と出力。
4. 文字列長チェック
Dim r As Range
For Each r In Range("D2:D20")
If Len(r.Value) > 10 Then
r.Offset(0, 1).Value = "長すぎ"
End If
Next r
VB👉 文字列が 10文字を超える場合「長すぎ」と出力。
5. 日付判定
Dim r As Range
For Each r In Range("E2:E20")
If IsDate(r.Value) Then
r.Offset(0, 1).Value = "日付OK"
Else
r.Offset(0, 1).Value = "日付ERR"
End If
Next r
VB👉 日付かどうかを判定して右隣に結果を出力。
6. 重複判定
Dim r As Range
For Each r In Range("F2:F20")
If WorksheetFunction.CountIf(Range("F2:F20"), r.Value) > 1 Then
r.Offset(0, 1).Value = "重複"
End If
Next r
VB👉 同じ値が複数ある場合「重複」と出力。
7. 特定文字含有チェック
Dim r As Range
For Each r In Range("G2:G20")
If InStr(r.Value, "NG") > 0 Then
r.Offset(0, 1).Value = "NG含む"
End If
Next r
VB👉 「NG」を含む文字列を検出。
8. 前回値との差分チェック
Dim r As Range
For Each r In Range("H3:H20")
If r.Value - r.Offset(-1, 0).Value < 0 Then
r.Offset(0, 1).Value = "減少"
Else
r.Offset(0, 1).Value = "増加/同値"
End If
Next r
VB👉 前行との差分を判定して右隣に出力。
9. 正規表現による形式チェック(例:郵便番号)
Dim r As Range, regEx As Object
Set regEx = CreateObject("VBScript.RegExp")
regEx.Pattern = "^\d{3}-\d{4}$"
For Each r In Range("I2:I20")
If regEx.Test(r.Value) Then
r.Offset(0, 1).Value = "形式OK"
Else
r.Offset(0, 1).Value = "形式ERR"
End If
Next r
VB👉 郵便番号形式(例:123-4567)を判定。
10. エラー値判定(#N/A など)
Dim r As Range
For Each r In Range("J2:J20")
If IsError(r.Value) Then
r.Offset(0, 1).Value = "エラー値"
End If
Next r
VB👉 セルがエラー値なら右隣に「エラー値」と出力。
✅ まとめ
- Offset → 判定結果を隣列へ出力
- 条件分岐 → 数値判定・空白判定・範囲外チェック・文字列長・日付・重複・正規表現など
- 黄金パターン → 入力検証・エラー検出・ラベル付与を一括テンプレ化
💡 この「データ検証 × Offset × 条件分岐」パターン集を使えば、売上表・勤怠表・在庫表などの 入力チェックや品質管理 を自動化できます。

