更新日:、 作成日:

VBA Trim 関数:前後の空白を削除する

はじめに

Excel VBA マクロの Trim 関数から前後の空白を削除する方法を紹介します。

Trim 関数は、文字列の先頭と最後の空白 (スペース) を取り除いて返します。

  ABC   なら ABC を返します。

文字列の先頭と最後の空白を削除したいときに使用します。

先頭の空白を削除するには「LTrim 関数」を使用します。
最後の空白を削除するには「RTrim 関数」を使用します。
空白を置換するには「文字列を置換する」をご覧ください。

Trim 関数の引数と戻り値

Trim(文字列)
文字列の前後から空白を削除します。

引数「文字列」文字列を指定します。
戻り値の型文字列型 (String)

解説

引数「文字列」の先頭と最後にある半角スペースと全角スペースの空白を削除します。

空白が連続してあるときはすべて削除します。

引数「文字列」の間にある空白は削除されません。「Replace 関数」を使用して削除できます。

引数「文字列」に空白が含まれていないときはそのまま返します。

使用例

Trim 関数の使用例を紹介します。

前後の空白を削除する

前後の空白を削除します。

Dim s As String
s = Trim("  ABC  ") ' 半角と全角スペース
Debug.Print(s) ' "ABC"

s = Trim("A B C")
Debug.Print(s) ' "A B C"

空白を削除する

LTrim 関数」や「RTrim 関数」を使用して、先頭や最後の空白を削除できます。

Dim s As String
s = LTrim(" A B C ")
Debug.Print(s) ' "A B C  "

s = Trim(" A B C ")
Debug.Print(s) ' "A B C"

s = RTrim(" A B C ")
Debug.Print(s) ' " A B C"

すべての空白を削除する

Replace 関数」を使用して、すべての空白を削除できます。

Dim s As String
s = Replace(" A B C ", " ", "", compare:=vbTextCompare)  ' すべての空白を削除
Debug.Print(s) ' "ABC"

s = Replace(" A B C ", " ", "")                          ' 半角スペースを削除
Debug.Print(s) ' "AB C "

s = Replace(" A B C ", " ", "")                         ' 全角スペースを削除
Debug.Print(s) ' " A BC"