怎样批量删除excel表格中“汉字”前面的英文和数字

怎样批量删除excel表格中“图案”这一列的第一个汉字前面的英文和数字,箭头后是删除后的样子

需要使用宏:

    点击视图-宏

    输入一个宏的名字,并点击新建。


    在弹出的对话框输入下面的内容

    function del(cl as range)
        dim reg as object
        set reg=createobject("vbscript.regexp")
        with reg
            .pattern="^[A-Za-z\d]+"
            del=.replace(cl,"")
        end with
    end function

    点击视图-宏-运行该宏即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-02-14

自定义函数吧

function del(cl as range)
    dim reg as object
    set reg=createobject("vbscript.regexp")
    with reg
        .pattern="^[A-Za-z\d]+"
        del=.replace(cl,"")
    end with
end function

追问

“Feather White2白羽毛2” 两个英文单词之间有空格的不行,变成“White2白羽毛2”

追答

function del(cl as range)
dim reg as object
set reg=createobject("vbscript.regexp")
with reg
.pattern="^[A-Z a-z\d]+"
del=.replace(cl,"")
end with
end function
加个空格的判断就好了

本回答被提问者采纳
第2个回答  2015-07-09
I3
=TRIM(MID(G3,MATCH(" ",MIDB(G3,ROW(INDIRECT("1:"&LENB(G3))),1),),99))
复制公式到I3,然后按组合键ctrl+shift+enter结束,下拉填充追问

“Feather White2白羽毛2” 两个英文单词之间有空格的不行,变成“White2白羽毛2”

追答

若前面有空格,用以下公式:
=TRIM(MID(G3,MATCH(TRUE,MID(G3,ROW(INDIRECT("1:"&LEN(G3))),1)>="吖",),99))

第3个回答  2015-07-09
I3输入公式:
=RIGHT(G3,LENB(G3)-LEN(G3))
下拉复制本回答被网友采纳
第4个回答  2015-07-09
这个问题可以用VBA,也就是宏代码解决。发文件给我。