VBA 全角转半角

来源:互联网 发布:手机更换软件图标 编辑:程序博客网 时间:2024/06/04 08:53

Option Explicit

Sub BatchReplace()
    Dim oDict, strKey
   
    Set oDict = CreateObject("Scripting.Dictionary")
   
    '全角数字转换为半角
    oDict.Add "1", "1"
    oDict.Add "2", "2"
    oDict.Add "3", "3"
    oDict.Add "4", "4"
    oDict.Add "5", "5"
    oDict.Add "6", "6"
    oDict.Add "7", "7"
    oDict.Add "8", "8"
    oDict.Add "9", "9"
    oDict.Add "0", "0"
    '小写全角转换
    oDict.Add "a", "a"
    oDict.Add "b", "b"
    oDict.Add "c", "c"
    oDict.Add "d", "d"
    oDict.Add "e", "e"
    oDict.Add "f", "f"
    oDict.Add "g", "g"
    oDict.Add "h", "h"
    oDict.Add "i", "i"
    oDict.Add "j", "j"
    oDict.Add "k", "k"
    oDict.Add "l", "l"
    oDict.Add "m", "m"
    oDict.Add "n", "n"
    oDict.Add "o", "o"
    oDict.Add "p", "p"
    oDict.Add "q", "q"
    oDict.Add "r", "r"
    oDict.Add "s", "s"
    oDict.Add "t", "t"
    oDict.Add "u", "u"
    oDict.Add "v", "v"
    oDict.Add "w", "w"
    oDict.Add "x", "x"
    oDict.Add "y", "y"
    oDict.Add "z", "z"
  '大写全角转换
    oDict.Add "A", "A"
    oDict.Add "B", "B"
    oDict.Add "C", "C"
    oDict.Add "D", "D"
    oDict.Add "E", "E"
    oDict.Add "F", "F"
    oDict.Add "G", "G"
    oDict.Add "H", "H"
    oDict.Add "I", "I"
    oDict.Add "J", "J"
    oDict.Add "K", "K"
    oDict.Add "L", "L"
    oDict.Add "M", "M"
    oDict.Add "N", "N"
    oDict.Add "O", "O"
    oDict.Add "P", "P"
    oDict.Add "Q", "Q"
    oDict.Add "R", "R"
    oDict.Add "S", "S"
    oDict.Add "T", "T"
    oDict.Add "U", "U"
    oDict.Add "V", "V"
    oDict.Add "W", "W"
    oDict.Add "X", "X"
    oDict.Add "Y", "Y"
    oDict.Add "Z", "Z"
    '标点符号
    oDict.Add ",", ","
    oDict.Add ":", ":"
    oDict.Add ";", ";"
    oDict.Add "(", "("
    oDict.Add ")", ")"
    oDict.Add "[", "["
    oDict.Add "]", "]"
    oDict.Add ".", "."
    oDict.Add "+", "+"
    oDict.Add "%", "%"
    oDict.Add "/", "/"

   
    ' ......
    ' 在这里可以根据需要增加更多的替换规则
    ' ......
   
    For Each strKey In oDict.Keys
        Selection.Find.Execute FindText:=strKey, ReplaceWith:=oDict(strKey), Replace:=wdReplaceAll
        Selection.StartOf wdStory
    Next
   
    MsgBox "完成!"
End Sub

原创粉丝点击