はじめに
Excelで作業をしていると、
「前後の空白を取りたい」
「データがきれいに揃わない」
そんな“ちょっとした違和感”に出会うことがあります。
そこで役立つのが Trim 関数 です。
ここでは、Trim の基本の使い方と、
実務で役立つ書き方を解説します。
まずはコードを確認
Dim s As String
s = Trim(" Excel VBA ")
結果は “Excel VBA“。
前後の空白が取り除かれます。
Trim の基本
文字列の前後の空白を削除する
Trim(文字列)
- 前後の空白を取り除く
- 文字列の中間(単語間)の空白はそのまま
- 実務で最もよく使う“整え”の関数
よく使うパターン
セルの値をトリムする
Range("A1").Value = Trim(Range("A1").Value)
入力値を整えてから使う
Dim name As String
name = Trim(InputBox("名前を入力してください。"))
Split の前にトリムする
Dim arr As Variant
arr = Split(Trim(" A, B, C "), ",")
余分な空白があると Split の結果が乱れるため、
Trim と組み合わせると安心です。
具体的な例で理解する
CSVのような文字列を整える
Dim txt As String
txt = " A , B , C "
txt = Replace(txt, " ", "") '空白除去
Dim arr As Variant
arr = Split(txt, ",")
Trim と Replace を組み合わせると、
データがきれいに整います。
前後の空白を取り除いて比較する
If Trim(Range("A1").Value) = "OK" Then
MsgBox "一致しました。"
End If
空白のせいで一致しない問題を防げます。
ループで複数セルをトリムする
Dim i As Long
For i = 1 To 10
Cells(i, 1).Value = Trim(Cells(i, 1).Value)
Next i
データの前処理としてよく使うパターンです。
Trim と LTrim / RTrim の違い
| 関数 | 内容 |
|---|---|
| Trim | 前後の空白を削除 |
| LTrim | 左側(先頭)の空白だけ削除 |
| RTrim | 右側(末尾)の空白だけ削除 |
部分的に空白を取りたいときは LTrim / RTrim が便利です。
注意点(実務で気をつけたいこと)
文字列の中間の空白は削除されない
→ “A B” のような空白はそのまま残ります。
全角スペースは Trim では取れない
→ Replace を使うと安心です。
txt = Replace(txt, " ", "") '全角スペース除去
数値に Trim を使うと文字列になる
→ 必要に応じて CInt や CLng で戻すと安全です。
応用:全角・半角スペースをまとめて除去する
Function CleanSpace(txt As String) As String
txt = Trim(txt)
txt = Replace(txt, " ", "") '全角スペース
CleanSpace = txt
End Function
実務でよく使う“空白クリーニング”の関数です。
まとめ
- Trim は文字列の前後の空白を取り除く関数
- 入力値の整形、比較、Split の前処理などで活躍
- 中間の空白は残るため、必要に応じて Replace と併用
- 全角スペースは Trim では取れない点に注意
- データを“やさしく整える”ための基本テクニック
Trim は、文字列をそっと整えてくれる、静かな相棒です。

Trim を使うと、データがすっと整って、扱いやすくなります。
小さな空白を取り除くだけで、処理の安定感がぐっと増します。

空白がなくなると、文字がきゅっと引き締まって見えるね。
VBAは、こういう細かな整えごとも得意なんだなあ。

コメント