Vba: 文字列から数値を削除する方法
VBA で次の関数を作成して、Excel のセルの文字列から数値を削除できます。
Function RemoveNumbers(CellText As String) As String
With CreateObject(" VBScript.RegExp ")
.Global = True
.Pattern = " [0-9] "
RemoveNumbers = .Replace(CellText, "")
End With
End Function
この関数を使用すると、Excel の任意のセルから数値を削除できます。
次の例は、この関数を実際に使用する方法を示しています。
例: VBA を使用して文字列から数値を削除する
Excel に次のような従業員 ID のリストがあるとします。
従業員 ID列の各文字列から数字を削除したいとします。
これを行うには、VBA で次の関数を作成できます。
Function RemoveNumbers(CellText As String) As String
With CreateObject(" VBScript.RegExp ")
.Global = True
.Pattern = " [0-9] "
RemoveNumbers = .Replace(CellText, "")
End With
End Function
この関数を作成したら、セルB2に次の数式を入力して、すべての桁が削除されたセルA2の従業員番号を返すことができます。
=RemoveNumbers( A2 )
次に、この数式をクリックして、列 B の残りの各セルにドラッグします。
列 B には、列 A の各文字列から数字が削除されて表示されます。
例えば:
- 4009アンディはアンディになる
- 1540 ボブがボブになる
- 1500Chad09 がチャドになります
- 1600ダグはダグになる
等々。
追加リソース
次のチュートリアルでは、VBA を使用して他の一般的なタスクを実行する方法について説明します。
VBA: 文字列内の文字の出現を数える方法
VBA: 文字列に別の文字列が含まれているかどうかを確認する方法
VBA: 特定のテキストを含むセルを数える方法