VBATips

空白埋めした文字列の空白を削除する【LTrim関数】【ExcelVBA】

文字列の空白埋めを削除したい

文字列の前後を空白埋めで 桁数を揃える(Space関数/Right関数)処理をしたのちに、
空白埋め部分を削除したい場合があります。
空白埋め削除の処理をパーツ化しているので、コピペで使用してください。

文字列の空白埋めを削除するサンプルコード

LTrim関数を使用して文字列をの先頭の空白を削除します。

'■文字列の空白埋め(半角/全角)を消去する
Public Function Call_Delete_SpacePadding(str As String) As String
    
    Call_Delete_SpacePadding = LTrim(str)
    
End Function

実際の使い方

Public Sub sample()
        
    '■通常使うパターン(半角スペース)
    Debug.Print Call_Delete_SpacePadding("    1")    '1
    Debug.Print Call_Delete_SpacePadding("  1000")   '1000
    
    '■通常使うパターン(全角スペース)
    Debug.Print Call_Delete_SpacePadding("  1")    '1
    Debug.Print Call_Delete_SpacePadding("  1000") '1000
    
    '■小数点あり
    Debug.Print Call_Delete_SpacePadding("   0.1")   '0.1
    
    '■マイナス数値
    Debug.Print Call_Delete_SpacePadding("-   1")     '-   1'★先頭にマイナス符号の場合は唯一処理が出来ない
    Debug.Print Call_Delete_SpacePadding("  -100")    '-100

End Sub

注意点

  • 先頭にマイナス数値があるパターン以外は単純にLTrim関数を使用するだけです。
  • 今回はわざわざFunctionで分けていますが、実際には別途エラー回避などの処理をする為に分けています。
    ※桁数指定、抜き出す文字列内の先頭に空白が必要な場合はRight関数を使用する。
    ※先頭にマイナス数値があれば、マイナス数値からスタートならRight関数を使用した後マイナスを付与する。

関連記事

文字列の前後を空白埋めで 桁数を揃える(Space関数/Right関数)
0埋めして桁数を揃える(Format関数/Right関数)
0埋めした文字列の0を削除する【Val関数応用】【ExcelVBA】
文字列内スペースの削除処理をパーツ化する【Replace関数】【ExcelVBA】

 

コメント

タイトルとURLをコピーしました