【VBA】文字列からスペースを削除する

文字列からスペースを削除する方法は
複数あります!

文字列からスペースを削除する方法は
 ・先頭のスペースを削除(LTrim関数)
 ・末尾のスペースを削除(RTrim関数)
 ・先頭末尾のスペースを削除(Trim関数)
 ・全てのスペースを削除(Replace関数)
の4種類あります!

文字列の真ん中のスペースは削除したくない場合は
 ・LTrim関数、RTrim関数、Trim関数
を使用します!

文字列の真ん中のスペースも削除したい場合は
 ・Replace関数
を使用します!

PR

先頭のスペースを削除(LTrim関数)

ここでは例として
 ・先頭にスペース(半角と全角)がある文字列から
 ・スペース(半角と全角)を削除
します。
※スペース削除前後の文字列をイミディエイトウインドウへ出力します。

Option Explicit

Sub sample()
    
    Dim targetString As String
    
    '先頭にスペース(半角と全角)
    targetString = "     こんにちは!"
    
    'スペースを削除前
    Debug.Print "削除前:" & targetString & "★"
    '先頭のスペースを削除後
    Debug.Print "削除後:" & LTrim(targetString) & "★"

End Sub

先頭のスペースの削除は「LTrim関数」により実現できます。
※「LTrim」は「Left Trim」の略です。


上記を実行すると、先頭のスペースが削除されたことを確認できます。

実行結果
実行結果
PR

末尾のスペースを削除(RTrim関数)

ここでは例として
 ・末尾にスペース(半角と全角)がある文字列から
 ・スペース(半角と全角)を削除
します。
※スペース削除前後の文字列をイミディエイトウインドウへ出力します。

Option Explicit

Sub sample()
    
    Dim targetString As String
    
    '先頭にスペース(半角と全角)
    targetString = "こんにちは!     "
    
    'スペースを削除前
    Debug.Print "削除前:" & targetString & "★"
    '末尾のスペースを削除後
    Debug.Print "削除後:" & RTrim(targetString) & "★"

End Sub

末尾のスペースの削除は「RTrim関数」により実現できます。
※「RTrim」は「Right Trim」の略です。


上記を実行すると、末尾のスペースが削除されたことを確認できます。

実行結果
実行結果
PR

先頭と末尾のスペースを削除(Trim関数)

ここでは例として
 ・先頭末尾にスペース(半角と全角)がある文字列から
 ・スペース(半角と全角)を削除
します。
※スペース削除前後の文字列をイミディエイトウインドウへ出力します。

Option Explicit

Sub sample()
    
    Dim targetString As String
    
    '先頭にスペース(半角と全角)
    targetString = "     こんにちは!     "
    
    'スペースを削除前
    Debug.Print "削除前:" & targetString & "★"
    '末尾のスペースを削除後
    Debug.Print "削除後:" & Trim(targetString) & "★"

End Sub

先頭末尾のスペースの削除は「Trim関数」により実現できます。


上記を実行すると、先頭末尾のスペースが削除されたことを確認できます。

実行結果
PR

全てのスペースを削除(Replace関数)

ここでは例として
 ・先頭、真ん中、末尾にスペース(半角と全角)がある文字列から
 ・スペース(半角と全角)を削除
します。
※スペース削除前後の文字列をイミディエイトウインドウへ出力します。

Option Explicit

Sub sample()
    
    Dim targetString As String
    
    '先頭にスペース(半角と全角)
    targetString = "     こんに     ちは!     "
    
    'スペースを削除前
    Debug.Print "削除前:" & targetString & "★"
    
    '全てのスペース(半角)を削除
    targetString = Replace(targetString, " ", "")
    '全てのスペース(全角)を削除
    targetString = Replace(targetString, " ", "")
    
    '全てのスペース(全角)を削除
    Debug.Print "削除後:" & targetString & "★"

End Sub

Replace関数は一度にどちらかのスペース(半角 or 全角)しか削除できません。
両方削除したい場合は2回実行します(14、16行目)

Replace関数は置換によりスペースを削除します。
※スペースを「空文字」へ置換することで削除します。


上記を実行すると、先頭、真ん中、末尾のスペースが削除されたことを確認できます。

実行結果
実行結果
PR

参考

上記で使用した以下の詳細は、公式サイトをご確認ください。

LTrim関数、RTrim関数、Trim関数


Replace関数