首页 > Excel专区 > Excel技巧 >

如何使用Excel 2013/2016中的用户定义函数或VBA宏从字符串中删除非字母数字字符

Excel技巧 2023-01-08

本文将讲述如何在Excel中从给定单元格中的文本字符串中删除所有非字母数字字符。如何使用Excel 2013/2016中的用户定义函数或VBA宏从字符串中删除非字母数字字符。

  • 使用用户定义的函数删除所有非字母数字字符
  • 使用VBA宏删除所有非字母数字字符

使用用户定义的函数删除所有非字母数字字符


假设您有一个包含文本字符串值的范围A1:A3中的数据列表,并且您只想从这些单元格中删除所有非字母数字字符并保留其他字母数字字符。怎么做。您需要记下Excel VBA宏以实现快速删除所有非字母数字字符的结果。只需执行以下步骤:

步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。

Excel 中如何只複製內容和格式102

步骤2:然后将出现“Visual Basic编辑器”窗口。

Excel 中如何只複製內容和格式91

步骤3:单击“插入” – >“模块”以创建新模块。

Excel 中如何只複製內容和格式101

步骤4:将以下VBA代码粘贴到代码窗口中。然后单击“保存”按钮。

Excel 中如何删除所有非数字字母字符

Function RemoveNonAlpha(str As String) As String
    Dim ch, bytes() As Byte: bytes = str
    For Each ch In bytes
        If Chr(ch) Like "[A-Z.a-z 0-9]" Then RemoveNonAlpha = RemoveNonAlpha & Chr(ch)
    Next ch
End Function
 

步骤5:返回当前工作表,然后在空白单元格中键入以下公式,然后按Enter键。并将“自动填充处理”拖动到其他单元格。

= RemoveNonAlpha(A1)

步骤6:让我们看看最后的结果:

Excel 中如何删除所有非数字字母字符

使用VBA宏删除所有非字母数字字符


您还可以使用另一个VBA宏来实现删除Excel中所有非字母数字字符的相同结果。只需执行以下步骤:

步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。

Excel 中如何只複製內容和格式102

步骤2:然后将出现“Visual Basic编辑器”窗口。

Excel 中如何只複製內容和格式91

步骤3:单击“插入” – >“模块”以创建新模块。

Excel 中如何只複製內容和格式101

步骤4:将以下VBA代码粘贴到代码窗口中。然后单击“保存”按钮。

Excel 中如何删除所有非数字字母字符

Function RemoveNonAlpha(str As String) As String
    Dim ch, bytes() As Byte: bytes = str
    For Each ch In bytes
        If Chr(ch) Like "[A-Z.a-z 0-9]" Then RemoveNonAlpha = RemoveNonAlpha & Chr(ch)
    Next ch
End Function

Sub RemoveNonAlphaMacro()
    Dim rng As Range
    Set MyRange = Application.Selection
    Set MyRange = Application.InputBox("Select One Range:", "RemoveNonAlphaMacro", MyRange.Address, Type:=8)

    For Each rng In MyRange
        rng.Value = RemoveNonAlpha(rng.Value)
    Next
End Sub

步骤5:返回当前工作表,然后运行上面的excel宏。点击执行按钮。

Excel 中如何删除所有非数字字母字符

步骤6:选择一个包含要删除的非字母数字字符的范围。单击确定按钮。

Excel 中如何删除所有非数字字母字符

步骤7:您将看到已从所选单元格区域中删除所有非字母数字字符。

Excel 中如何删除所有非数字字母字符

如何使用Excel 2013/2016中的用户定义函数或VBA宏从字符串中删除非字母数字字符的下载地址:
  • 本地下载


  • Copyright © 2016-2023 office学习教程网 office.tqzw.net.cn. All Rights Reserved.