Sub 删除表情符号()
Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim emojiPattern As String
' 设置要搜索的工作表
Set ws = ActiveSheet ' 或者根据需要指定具体的工作表
' 设置要搜索的范围,例如整个工作表
Set rng = ws.UsedRange ' 或者根据需要指定其他范围
' 设置表情符号的模式(Emoji的Unicode编码范围)
emojiPattern = "[\uD83C-\uDBFF\uDC00-\uDFFF\uD800-\uDBFF\uDFFF\u2600-\u26FF]"
' 遍历范围中的每个单元格
For Each cell In rng
' 使用正则表达式替换表情符号为空字符串
cell.Value = ReplaceRegEx(cell.Value, emojiPattern, "")
Next cell
End Sub
Function ReplaceRegEx(ByVal text As String, _
ByVal replacePattern As String, _
ByVal replaceWith As String) As String
Dim regEx As Object
' 创建正则表达式对象
Set regEx = CreateObject("VBScript.RegExp")
' 设置正则表达式的模式和替换文本
regEx.Global = True
regEx.Pattern = replacePattern
' 执行替换操作
ReplaceRegEx = regEx.Replace(text, replaceWith)
End Function
步骤:
- 在Excel中按下
Alt + F11
打开 Visual Basic for Applications (VBA) 编辑器。 - 在菜单栏上选择
插入
>模块
,将创建一个新模块。 - 将上面提供的宏代码复制并粘贴到新模块中。
- 关闭 VBA 编辑器,返回 Excel。
- 运行宏:按下
Alt + F8
打开宏对话框,选择删除表情符号
并点击运行
。