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 列中的每个剩余单元格:

VBA从字符串中删除数字

B 列显示 A 列中删除了数字的每个字符串。

例如:

  • 第4009章安迪变成安迪
  • 第1540章鲍勃成为鲍勃
  • 1500Chad09成为乍得
  • 1600道格成为道格

等等。

其他资源

以下教程说明如何使用 VBA 执行其他常见任务:

VBA:如何计算字符串中字符的出现次数
VBA:如何检查一个字符串是否包含另一个字符串
VBA:如何计算具有特定文本的单元格

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注