美文网首页
提取混合字符串中的连续汉字

提取混合字符串中的连续汉字

作者: 麦睿蔻 | 来源:发表于2019-11-08 14:23 被阅读0次

    《Excel 2010 函数与公式》疑难143

    如图:


    Snap1.jpg

    将A列中的连续汉字提取到B列
    1、VBA法

    Sub 提取汉字()
        Dim reg As Object
        Dim mh
        Set reg = CreateObject("vbscript.regexp")
        Dim i As Integer
        reg.Pattern = "[^\u4e00-\u9fff]+"
        reg.Global = True
        reg.ignorecase = True
        For i = 2 To Range("a65536").End(xlUp).Row
            Cells(i, 3) = reg.Replace(Cells(i, 1).Value, "") '将提取的汉字放入C列
        Next
    End Sub
    

    2、函数法
    在B2单元格中输入如下数组公式

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

    PS. 函数公式法的有个缺点,就是如果以后A列中有新增内容,需要手动在B列中拖拉公式到目标单元格。而VBA法会自动进行处理。

    相关文章

      网友评论

          本文标题:提取混合字符串中的连续汉字

          本文链接:https://www.haomeiwen.com/subject/gfnibctx.html