VBATips

0埋めした文字列の0を削除する【Val関数応用】【ExcelVBA】

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

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

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

Val関数を使用して文字列を数値に変換→CStr関数を元の形式の文字列型(String)に変換します。

'■文字列の0埋めを消去する
Public Function Call_Delete_ZeroPadding(str As String) As String
    
    Call_Delete_ZeroPadding = CStr(Val(str))
    
End Function

実際の使い方

Public Sub sample()
        
    '■通常使うパターン
    Debug.Print Call_Delete_ZeroPadding("0001") '1
    Debug.Print Call_Delete_ZeroPadding("1000") '1000
    
    '小数点あり
    Debug.Print Call_Delete_ZeroPadding("00.1") '0.1
    
    '■マイナス数値
    Debug.Print Call_Delete_ZeroPadding("-001") '-1
    Debug.Print Call_Delete_ZeroPadding("-100") '-100

    '■特殊なケース
    Debug.Print Call_Delete_ZeroPadding("aaa")  '0 数値以外は0
    Debug.Print Call_Delete_ZeroPadding("")     '0 引数なしも0

End Sub

注意点

関連記事

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

 

コメント

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