在工作个学习中,有时候会遇到一个单元格里面有中文、英文、数字混合,想要快速区分开来,一个一个复制太繁琐,而且容易出错。

如何快速提取出中文、英文、数字,请看详细经验。

工具/原料

  • 计算机,Office
  • VBA

方法/步骤

  1. 1

    1、进入VBA编辑面板

    打开Excel,按Ctrl+F11,快速进入VBA编辑面板,初学者可以从开发工具——Visual Basic进入VBA,如图:

  2. 2

    2、插入模块

    VBA菜单栏——插入——模块,插入一个新模块,用来编写VBA代码,

    如图:

  3. 3

    3、输入代码

    输入以下代码:

    Function MyGet(Srg As String, Optional n As Integer = False)

    Dim i As Integer

    Dim s, MyString As String

    Dim Bol As Boolean

    For i = 1 To Len(Srg)

    s = Mid(Srg, i, 1)

    If n = 1 Then

    Bol = Asc(s) < 0

    ElseIf n = 2 Then

    Bol = s Like "[a-z,A-Z]"

    ElseIf n = 0 Then

    Bol = s Like "#"

    End If

    If Bol Then MyString = MyString & s

    Next

    MyGet = IIf(n = 1 Or n = 2, MyString, Val(MyString))

    End Function

    然后肤屈诉保存,欠购如图:

  4. 4

    4、返回Excel界面,提取中文

    关闭VBA模块追销,返回Excel界面,在B2单元格中输入=Myget(a2,1),提取A2单元格里的中文部分,如图:

  5. 5

    5、提取英文

    在C2单元格中输入=Myget(a2,2),提取A2单元格里的英文部分,

    如图:

  6. 6

    6、提取数字

    在D2单元格中输入=Myget(a2),提取A2单元格里的数字,

    如图:

    END

注意事项

  • 用VBA可以快速实现自己想要的效果。
  • 原创不易,感谢支持。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。