【求助】word巨集問題



贊助商連結


arti
2002-10-09, 06:35 PM
粉冒昧的打擾各位前輩高手,我有二個問題想求助
問題一是:
在WORD中篇中英文會話中,某些英文句子有標記顏色,可否在這些句字或單字前後各加上一個符號作標記,否在WORD中用一個巨集指令寫出。

問題二是:
可否在純文字檔中,看的到WORD的幕後指令,就像是HTML可在記事本中看到。謝謝您!:confused:

贊助商連結


leonchou
2002-10-10, 01:00 PM
《Answer of Q1》

還是搜尋取代的問題...
其實用 [編輯] >> [取化] 即可解決, 要寫成巨集,
頂多是把它錄製起來而已 ~

Sub ReplaceColorWords()
With Selection.Find
'.ClearFormatting
'.Replacement.ClearFormatting
.Font.Color = wdColorRed
.Execute "", Replacewith:="[^&]", Format:=True, _
  Wrap:=wdFindContinue, Replace:=wdReplaceAll
End With
End Sub

說明 --
只用一個指令應該是不行, 因為使用者的需求千變萬化,
VBA不可能一一去寫專用的指令.. 如果要精簡,
就需要充分了解 Word 的 Find 物件及它的屬性和方法..
當你充分了解以後, 就知道很多參數和設定可以省略,
只留下需要的部份, 這就是精簡了.

wdColorRed 是 Word VBA 的色彩常數, 在此表示
搜尋紅色的字, 當搜尋目標的顏色一致時就很方便.

[^&] 是什麼? ^& 代表「找到的字」, 由於不能
預設找到的內容, 故有此特殊符號代替. 而 [^&] 則表示
找到的字用 [ ] 把它括起來.

另外, Find.ClearFormatting 和 Find.Replacement.ClearFormatting
多數的情形下建議不要省略, 除非你能確定執行之前
沒有設定其他搜尋取代的項目.

《Answer of Q2》

Word 文件不是 HTML, VBA 也不是網頁程式語言, 不能適用按右鍵>>檢視原始檔那一套~
VBA 有它自己的編輯器, 要看原始程式碼, 下列方式二選一 :
按 [Alt+F8] 叫出巨集執行視窗 >> 選取巨集名稱 >> [編輯]
按 [Alt+F11] 叫出 VB 編輯器 >> 選取巨集所在模組 >> 點兩下開啟

arti
2002-10-11, 12:59 PM
真是感謝您,高手Leon Chou!
一語點醒夢中人,我把[^&]這個給遺忘了,所以說這確實還是一個【取代】的問題。
不過高手,有時我對於【尋找】【取代】為什麼的那些【指定方式】選項還真不是十分懂。
還是真的好好感謝您!為我解決問題。