Excelの実務では「入力データがバラバラ」「余計な空白や文字が混じっている」ことがよくあります。
そんなときに Cells を使って自動で整えると、分析や集計がスムーズになります。
1️⃣ 前後の空白を削除(Trim)
Sub TrimSpaces()
Dim i As Long, lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lastRow
If Cells(i, 1).Value <> "" Then
Cells(i, 1).Value = Trim(Cells(i, 1).Value)
End If
Next i
End Sub
VB👉 A列の文字列から「前後の余計なスペース」を削除。入力ミス対策に必須。
2️⃣ 全角スペースを削除(Replace)
Sub RemoveFullWidthSpaces()
Dim i As Long, lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lastRow
Cells(i, 1).Value = Replace(Cells(i, 1).Value, " ", "")
Next i
End Sub
VB👉 日本語入力で混じりやすい「全角スペース」を削除。
3️⃣ 特定文字を削除
Sub RemoveSymbols()
Dim i As Long, lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lastRow
Cells(i, 1).Value = Replace(Cells(i, 1).Value, "-", "")
Next i
End Sub
VB👉 電話番号やコードから「ハイフン」を削除。数値化したいときに便利。
4️⃣ 数字だけ残す(文字を削除)
Sub KeepNumbersOnly()
Dim i As Long, j As Long, txt As String, result As String, lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lastRow
txt = Cells(i, 1).Value
result = ""
For j = 1 To Len(txt)
If Mid(txt, j, 1) Like "[0-9]" Then
result = result & Mid(txt, j, 1)
End If
Next j
Cells(i, 1).Value = result
Next i
End Sub
VB👉 「商品コード123ABC」→「123」だけ残す。数値抽出に使える。
5️⃣ 空白行を削除
Sub DeleteBlankRows()
Dim i As Long, lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = lastRow To 1 Step -1
If Trim(Cells(i, 1).Value) = "" Then
Rows(i).Delete
End If
Next i
End Sub
VB👉 A列が空白の行を削除。データ整理の定番。
まとめ
- Trim → 前後の空白を削除
- Replace → 特定文字や全角スペースを削除
- Like / Mid → 数字だけ抽出
- Rows.Delete → 空白行を削除
💡 これらを組み合わせると「入力データを一発で整形」できます。
例えば「顧客リストの電話番号から空白・ハイフンを削除して数値化」などがすぐに可能です。


