教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 関数】Trim関数の使い方を教えて!

構文

構文は以下の通りです。

Trim(文字列)

解説

Trim関数は、与えられた文字列の前後にある空白文字(スペース、タブ、改行など)を取り除いた結果を返します。ただし、文字列内部の空白文字は取り除かれません。

引数 指定 内容
文字列 必須 任意の文字列を指定します。引用符(")で囲む必要があります。

使用例

Trim("  Hello, World!  ")

使い方

具体的な使い方を紹介します。

例1: 基本的な使い方

Dim str As String
str = "  Hello, World!  "
str = Trim(str)
MsgBox str

上記の例では、文字列変数strに前後に空白文字が含まれた文字列を代入し、Trim関数を使って空白文字を取り除いた後、結果をメッセージボックスに表示しています。実行結果は「Hello, World!」となります。

例2: セルの値に対して使う

Dim rng As Range
Set rng = Worksheets("Sheet1").Range("A1")
rng.Value = Trim(rng.Value)

上記の例では、シート「Sheet1」のセル「A1」に格納された文字列の前後の空白文字を取り除いています。Trim関数をセルの値に直接適用することで、セルの値を修正することができます。

プログラミング例

以下に、プログラミング例を紹介します。

1.文字列の前後にある空白を取り除いて比較する

Dim str1 As String
Dim str2 As String
str1 = "apple"
str2 = " apple "
If Trim(str1) = Trim(str2) Then
    MsgBox "等しい"
Else
    MsgBox "等しくない"
End If

上記の例では、文字列str1とstr2の前後にある空白を取り除いてから比較しています。実行結果は「等しい」となります。

2.複数のセルに対して一括でTrim関数を適用する

Sub TrimCells()
    Dim rng As Range
    Set rng = Worksheets("Sheet1").Range("A1:A10")
    For Each cell In rng
        cell.Value = Trim(cell.Value)
    Next cell
End Sub

上記の例では、シート「Sheet1」のセル「A1」から「A10」までの範囲に格納された文字列の前後の空白文字を一括で取り除いています。Forループを使用してセルごとにTrim関数を適用し、セルの値を修正しています。

まとめ

Trim関数は、文字列データの前後にある空白文字を取り除くための便利な関数です。Trim関数を使うことで、文字列データの整形や比較などの処理を簡単に行うことができます。是非活用してください。