arti
2002-07-18, 06:20 PM
想請問各位高手前輩可否有好的方法(巨集),可以在Word中把中英對話的中文去除,而只留下英文句子,謝謝。:confused:
贊助商連結
贊助商連結
贊助商連結 arti 2002-07-18, 06:20 PM 想請問各位高手前輩可否有好的方法(巨集),可以在Word中把中英對話的中文去除,而只留下英文句子,謝謝。:confused: 贊助商連結 leonchou 2002-09-12, 03:55 AM Sub 去掉中文() Selection.HomeKey wdStory With Selection.Find .ClearFormatting .Replacement.ClearFormatting .Execute "^p", Replacewith:="^l", MatchWildcards:=False, Replace:=wdReplaceAll .Execute "[!A-z 0-9 . ^t^l]", Replacewith:=" ", MatchWildcards:=True, Replace:=wdReplaceAll .Execute "^l", Replacewith:="^p", MatchWildcards:=False, Replace:=wdReplaceAll End With End Sub 這個巨集是用[取代]的方式把中文字改為全形空白. 為什麼可以用取代? 因為Word 尋找/取代 有[萬用字元]的功能可以 自訂靈活的搜尋條件, 如同程式中的 [!A-z 0-9 . ^t^l]. 若你不想把中文字取代為全形空白(也就是不預留中文字的位置), 那麼請把中間Replacewith:=" " 的全形空白去掉. 有關萬用字元/特殊字元的: 基本應用, 請參考 http://www.pczone.com.tw/showthread.php?t=31624 http://www.pczone.com.tw/showthread.php?t=62955 詳細說明, 請參閱Word輔助說明. arti 2002-09-12, 03:27 PM 真是謝謝你阿,偶把他設ㄉ好複雜,偶是利用顏色來錄製,更改刪除,還是你ㄉ簡潔多了,真是高手,有機會還請多教導(以下是我錄製ㄉ,我實在不會設成那ㄇ簡約,我會再研究,謝謝您!)。 Sub 刪中文對話() ' ' 刪中文對話 巨集 ' 巨集錄製於 2002/9/12,錄製者 arti ' Selection.Find.ClearFormatting Selection.Find.Font.Color = wdColorLightBlue Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "^?" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.WholeStory Selection.Font.Color = wdColorRed Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "^$" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "^#" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "^p" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "^w" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "." .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "?" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.Color = wdColorLightBlue With Selection.Find .Text = "," .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll Selection.Find.ClearFormatting Selection.Find.Font.Color = wdColorRed Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "^?" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchByte = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub leonchou 2002-09-12, 09:46 PM 錄製的巨集, 其實有很多內容都是預設值或是重複的動作, 實際寫的時候都可以省略. 只要把握重點即可~ 但何者是重點? 何者可以省略?? 所以 必需先詳細了解這個功能的用法和要訣, 才能把程式寫的更好... 個人覺得養成詳查VBA輔助說明的習慣 與技巧, 並多加測試以求透徹瞭解, 對活用、精簡程式係很有幫助滴~ :) arti 2002-09-12, 10:09 PM 最初由 Leon Chou 發表 錄製的巨集, 其實有很多內容都是預設值或是重複的動作, 實際寫的時候都可以省略. 只要把握重點即可~ 但何者是重點? 何者可以省略?? 所以 必需先詳細了解這個功能的用法和要訣, 才能把程式寫的更好... 個人覺得?.. 說的好,就是粉多動作都是重複。但是想省略、把握重點,卻不簡單,只好在努力了,(偶是工作上有需要用到WORD的巨集)。查過市面上的書,偶覺得在巨集這部分都說的含混其詞,功力也不如您(偶不是在拍馬屁喔!) 高手,如果有好ㄉ書,希望能推介一下,謝謝!:jump2: |
|