因為word自定義宏是不能自動運行的。
下面,本站與您分享一下,經過實踐證明可行的方法,讓您的宏隨文檔的打開而自動運行。
前提條件:您的word宏的安全級別設置為中或低。
理論指導:通過word所允許的能夠隨文檔的打開而自動運行的默認宏,調用自定義宏,這樣,我們平時自制的word自定義宏,就能實現自動運行了。
比如,您有一個自定義的倒計時的宏,代碼大概如下:
Sub Timer()
'其中的代碼已省略。
End Sub
'欲想知道倒計時宏代碼范例,請您參閱此文:http://www.dzwebs.net/3243.html
現在,我們只要在ThisDocumet代碼中添加默認的自動運行的宏,調用上述的宏,即可實現自定義宏的運行。
Sub AutoOpen()
Call Timer
End Sub
上述的Call Timer就是調用命令。方法是:Call 自定義宏名
上述的方法,比網絡中所講的各種方法,更實用更簡單。
知識擴展:
Word中能夠自動運行的默認宏代碼名稱及觸發條件如下:
1、名稱:AutoExec 條件:啟動Word或加載全局模板
2、名稱:AutoNew 條件:每次生成新文檔時
3、名稱:AutoOpen 條件:每次打開一個已有文檔時
4、名稱:AutoClose 條件:每次關閉文檔時
5、名稱:AutoExit 條件:退出word或卸載全局模板時
上述的例子中,我們正是借用了AutoOpen宏。
當下列條件之一為真時,如上編碼模塊中的自動宏將被識別。
自動宏可以保存於 Normal 模板、其他模板或文檔之中。唯一的例外是:AutoExec 宏,它只有保存在 Startup 文件夾的 Normal 模板或共用模板中才能自動運行。
在命名沖突的情況下(多個自動宏名相同),Word 運行上下文中最近的自動宏。例如,如果同時在文檔和附加模板中建立了 AutoClose 宏,只有文檔中的宏能夠運行。如在 Normal 模板中建立了 AutoNew 宏,只有當文檔或其附加模板中沒有名為 AutoNew 的宏時,該自動宏才能運行。
如果用戶按下 Shift 鍵可以終止宏的運行。例如,新建一個文檔(該文檔基於包含 AutoNew 宏的模板),按下 Shift 鍵可以終止 AutoNew 宏的運行。方法是按下 Shift 鍵的同時單擊【文件】菜單下【新建】對話框中的【確定】按鈕,直到顯示新文檔。在運行可能觸發自動宏的宏時,可用下列指令終止自動宏的運行。
WordBasic.DisableAutoMacros