excel 自定义函数实现提取汉字
- 2022-01-15
- 来源/作者: 菜鸟图库/ 菜鸟图库
- 364 次浏览
从字符串中提取或者删除汉字是在我们日常使用Excel中时常遇到的问题,这里提供一个从网络上收集而来的提取或者删除汉字的自定义函数,方便大家日常使用。
'---------------------------------------------------
'功能:提取字符串中汉字或者非汉字
'说明:Rg原字符串或单元格
'Et为True时,提取汉字,否则为提取非汉字
'发布:http://www.office26.com
'---------------------------------------------------
FunctionExtractHanzi(RgAsVariant,_
OptionalEtAsBoolean=True)AsString
WithCreateObject("VBSCRIPT.REGEXP")
.Global=True
IfEtThen
.Pattern="[^u4e00-u9fa5]"
Else
.Pattern="[u4e00-u9fa5]"
EndIf
ExtractHanzi=.Replace(Rg,"")
EndWith
EndFunction
实际应用:
作为一个函数使用在工作表的公式中,如:单元格A1的值为"ExcelFans.com欢迎你",然后我们在A2中键入公式=ExtractHanzi(A1),显示结果为:欢迎你:
把它用到其他的代码中,以下代码就是去除所选定区域中的所有汉字
'---------------------------------------------------
'功能:删除选定区域中所有汉字
'发布:http://www.office26.com
'---------------------------------------------------
SubDelAllHanzi()
DimRgAsRange,Rg1AsRange
DimxAddressAsString
OnErrorResumeNext
xAddress=ActiveSheet.UsedRange.Address
SetRg=Application.InputBox("请选择一个区域:","office26.com",xAddress,,,,,8)
IfRgIsNothingThenExitSub
SetRg=Application.Intersect(Rg,ActiveSheet.UsedRange)
IfRgIsNothingThenExitSub
ForEachRg1InRg
Rg1=ExtractHanzi(Rg1,False)
Next
EndSub
标签(TAG) excel自定义函数 excel提取汉字