WORD中批量转换中英文标点符号

玛丽莲梦兔
570次浏览
2020年08月17日 11:01
最佳经验
本文由作者推荐

飞翔的翅膀-音乐广播稿



WORD中批量转换中英文标点符号
先记下一个东西:全角情况下,WOR D中的空格为方格形状;半角情况
下,空格为小黑点形状。
打开word,工具宏编辑器在主 窗体复制以下内容后粘
贴,保存.关闭编辑器,在工具宏宏里调用.
Sub ToggleInterpunction()'中英文标点互换
Dim ChineseInterpunction() As Variant, EnglishInterpunction() As Variant
Dim myArray1() As Variant, myArray2() As Variant, strFind As String, strRep As
String
Dim msgResult As VbMsgBoxResult, N As Byte
'定义一个中文标点的数组对象
ChineseInterpunction = Array(、。,;:?!
~()《》
'定义一个英文标点的数组对象
EnglishInterpunction = Array(-

'提示用户交互的MSGBOX对话框
msgResult = M sgBox(您想中英标点互换吗?按Y将中文标点转为英文标点,按
N将英文标点转为中文标点!Select Case msgResult
Case vbCancel
Exit Sub '如果用户选择了取消按钮,则退出程序运行
Case vbYes '如果用户选择了YES,则将中文标点转换为英文标点
1 3



myArray1 = ChineseInterpunction
myArray2 = EnglishInterpunction
strFind =
strRep =
Case vbNo '如果用户选择了NO,则将英文标点转换为中文标点
myArray1 = EnglishInterpunction
myArray2 = ChineseInterpunction
strFind =
strRep = 1”
End Select
Updating = False '关闭屏幕更新
For N = 0 To UBound(ChineseInterpunction) '从数组的下标到上标间作一个循
环With
.ClearFormatting '不限定查找格式
.MatchWildcards = False '不使用通配符
'查找相应的英文标点,替换为对应的中文标点
.Execute findtext:=myArray1(N), replacewith:=myArray2(N),
Replace:=wdReplaceAllEnd With
Next
With
.ClearFormatting '不限定查找格式
.MatchWildcards = True '使用通配符
2 3



.Execute findtext:=strFind, replacewith:=strRep, Replace:=wdReplaceAll
End With
Updating = True '恢复屏幕更新
End Sub
3 3

阅兵感想-背包十年读后感


国家奖助学金申请书-铸剑为犁应有日


神奇的植物-浙江一本分数线


施正荣-调查报告封面


加拿大签证-高中日记


感动的作文600字-情人节祝福语大全简短


高考美术-诠释爱


学雷锋活动-四川文理学院教务处