操作方法
首先我们打开excel,点击文件-另存为,将其另存为xlsm启用宏的工作簿。
右击下方工作表名称,点击“查看代码”选项,打开vba编辑器。 这个过程可以直接按快捷键Alt+F8
在vba编辑器中,点击“插入”-“模块”
复制以下代码,粘贴在插入的模块中 Function TQ(rng As Range, Optional i As String = "数字") With CreateObject("vbscript.regexp") Select Case i Case "数字": .Pattern = "\d" Case "字母": .Pattern = "[a-zA-Z]" Case "汉字": .Pattern = "[\u4e00-\u9fa5]" End Select .Global = True Set matches = .Execute(rng.Value) For Each Match In matches a = a & s & Match Next TQ = IIf(Len(a) > 0, a, "") End With End Function
返回excel界面,比如下图我们要提取A列的数字到B列,那么我们在B2单元格输入=TQ(A2,"数字"),回车,向下填充即可。
如果需要提取字母或者汉字,把函数中的“数字”修改为“字母”或者“汉字”即可。