当前位置:主页 > Excel教程 > ExcelVBA实例 >

值得收藏的ExcelVBA | 在混合数据单元格中快速提取英文、数字、中文

在混合数据单元格中快速提取英文、数字、中文

相信许多人经常会遇到一些不懂Excel的同事和老板,将一份好好的资料在Excel中填写的是乱七八糟,甚至有时在一个单元格中弄了N多个信息,又是中文,又是英文,又是数据。这里易老师给大家分享一个不错的VBA,可以将单元格中混合数据包含中文、英文、数据信息单独提取出来。
 

混合数据预览

先看看混乱的数据吧!也许你的数据比这更乱,不过也没关系,我们可以轻松提取我们想要的中文或英文或数据。

在混合数据单元格中快速提取英文、数字、中文

开始提取

❶ 首先是【开发工具】-【代码】-【Visual Basic】;

❷ 在弹出的界面中点击【插入】-【模块】;

❸ 将下列代码复制到模块中。

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

❹ 返回Excel界面,然后在需要提取单元格中录入:

【=myget(A2,1)】是提取所有中文
【=myget(A2,2)】是提取所有英文
【=myget(A2)】是提取所有的数据

在混合数据单元格中快速提取英文、数字、中文

  • 关注微信关注微信
上一篇:没有了

猜你喜欢

最新评论:0条

发表评论

看不清?点击更换

微信公众号

微信公众号