
スペース(空白)を揃える Excel2013 マクロ講座 69回
文字列の先頭に半角、全角のスペースがバラバラに追加されている場合、
VBAではLtrim関数を使って空白を半角、全角関係なく削除することができます。
それでも、半角スペースだけ残せとか、全角スペースに統一しろなどと要望がある時は、前回(68回)のコードのままでは無理です。
しかし、ちょっと工夫で柔軟な操作が可能です。
(サンプルファイルは、こちらから マクロ69回サンプルデータ)
Sub スペースを揃える()
Dim セル As Range
Dim myStr As String
For Each セル In Selection
myStr = セル.Value
セル.Value = " " & LTrim(myStr)
Next セル
End Sub
Sub 先頭の空白を削除して様()
Dim セル As Range
Dim myStr As String
For Each セル In Selection
myStr = セル.Value
セル.Value = LTrim(myStr) & " 様"
Next セル
End Sub処理が早いのと、セルがシンプルなのがいいですね。
Sub 前後の空白を削除して間の空白を半角に()
Dim セル As Range
Dim myStr As String
For Each セル In Selection
myStr = セル.Value
セル.Value = Replace(Trim(myStr), " ", " ")
Next セル
End Sub
応用として、6行目のコードでReplaceの部分を Replace(myStr, "様", "")というような使い方をすると、様だけを削除することもできます。