ここでは Offset × 条件分岐 × Replace を組み合わせて「セルの値を検証し、修正した結果を隣列や下段に出力する」黄金テンプレをまとめます。
入力データのクレンジングや表記揺れ修正など、実務で頻出する処理を一括整理しました。
基本パターン 10選
1. 全角スペースを半角スペースに修正
Dim r As Range
For Each r In Range("A2:A20")
If InStr(r.Value, " ") > 0 Then
r.Offset(0, 1).Value = Replace(r.Value, " ", " ")
End If
Next r
VB👉 全角スペースを検出して半角に置換。
2. 特定文字列を削除
Dim r As Range
For Each r In Range("B2:B20")
If InStr(r.Value, "(株)") > 0 Then
r.Offset(0, 1).Value = Replace(r.Value, "(株)", "")
End If
Next r
VB👉 会社名の「(株)」を削除して右隣に修正版を出力。
3. NGワードを置換
Dim r As Range
For Each r In Range("C2:C20")
If InStr(r.Value, "NG") > 0 Then
r.Offset(0, 1).Value = Replace(r.Value, "NG", "※")
End If
Next r
VB👉 NGワードを「※」に置換。
4. 記号を削除
Dim r As Range
For Each r In Range("D2:D20")
If InStr(r.Value, "-") > 0 Then
r.Offset(0, 1).Value = Replace(r.Value, "-", "")
End If
Next r
VB👉 ハイフンを削除して右隣に修正版を出力。
5. 半角カナを全角カナに修正(例示)
Dim r As Range
For Each r In Range("E2:E20")
If InStr(r.Value, "ア") > 0 Then
r.Offset(0, 1).Value = Replace(r.Value, "ア", "ア")
End If
Next r
VB👉 半角カナを全角カナに置換。
6. 数字のゼロ埋め
Dim r As Range
For Each r In Range("F2:F20")
If IsNumeric(r.Value) Then
r.Offset(0, 1).Value = Format(r.Value, "0000")
End If
Next r
VB👉 数字を4桁ゼロ埋めに修正。
7. 日付フォーマット修正
Dim r As Range
For Each r In Range("G2:G20")
If IsDate(r.Value) Then
r.Offset(0, 1).Value = Format(r.Value, "yyyy/mm/dd")
End If
Next r
VB👉 日付を統一フォーマットに修正。
8. 英字の大文字化
Dim r As Range
For Each r In Range("H2:H20")
If r.Value <> "" Then
r.Offset(0, 1).Value = UCase(r.Value)
End If
Next r
VB👉 英字を大文字に修正。
9. 英字の小文字化
Dim r As Range
For Each r In Range("I2:I20")
If r.Value <> "" Then
r.Offset(0, 1).Value = LCase(r.Value)
End If
Next r
VB👉 英字を小文字に修正。
10. 特定文字列を別表記に変換
Dim r As Range
For Each r In Range("J2:J20")
If InStr(r.Value, "東京") > 0 Then
r.Offset(0, 1).Value = Replace(r.Value, "東京", "TOKYO")
End If
Next r
VB👉 「東京」を「TOKYO」に置換。
✅ まとめ
- Offset → 修正結果を隣列へ出力
- 条件分岐 → 特定文字列・空白・日付・数値などを判定
- Replace → 表記揺れや不要文字を置換してクレンジング
- 黄金パターン → スペース修正・記号削除・NGワード置換・フォーマット統一・大小文字変換
💡 この「データ修正 × Offset × 条件分岐 × Replace」パターン集を使えば、売上表・勤怠表・在庫表などの 入力データクレンジング を自動化できます。

