`
阅: 2160 | 回: 0
发表于2015/10/24 11:19:05 楼主 
头像 等级:初学者
积分:0
财富值:0.0
身份:普通用户

有时我们需要在Excel中将单元格中所包含的英文和中文分离出来,让分离出的中文和英文分别放到其他单元格中。如图:

假如A2单元格中包含中英文混合内容,可以用下面的方法来进行分离:

    1.使用用公式:

    在B2单元格中输入数组公式:

    =MID(A2,MATCH(2,LENB(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)),0),LENB(A2)-LEN(A2))

    公式输入完毕后按Ctrl+Shift+Enter结束。

    在C2单元格中输入公式:

    =TRIM(SUBSTITUTE(A2,B2,""))

    2.使用自定义函数:

    还可以在VBA中自定义一个函数,然后在Excel表格中使用该函数进行分离。方法是:按Alt+F11,打开VBA编辑器,单击菜单插入→模块,在右侧的代码窗口中输入下列代码:

    Function SplitStringChs(TheString)
      Dim n, Chs
      For n = 1 To Len(TheString)
        If Asc(Mid(TheString, n, 1)) < 0 Then
          Chs = Chs & Mid(TheString, n, 1)
        End If
      Next
      SplitStringChs = Chs
    End Function

    Function SplitStringEng(TheString)
    Dim n, Eng
    For n = 1 To Len(TheString)
      If Asc(Mid(TheString, n, 1)) >= 0 Then
        Eng = Eng & Mid(TheString, n, 1)
      End If
    Next
    SplitStringEng = Trim(Eng)
    End Function

    关闭VBA编辑器,在B2单元格中输入公式:

    =SplitStringChs(A2)

    在C2单元格中输入公式:

    =SplitStringeng(A2)


我的个性签名

快速回复

目前不允许游客发表,请 登录 注册 后再发贴。