【教學】自動存儲備份檔 (Word版)



贊助商連結


leonchou
2003-05-08, 08:46 PM
以下的內容是以Word97為基礎 (很不幸地我現在只有Word97),
但以新版本向下相容的特性,2000或2002也可適用的.
在我測試新版本之前,如果你發現以下的內容和新版本有所不同,
或是有不同的見解,歡迎提出. :)
<hr>

本範例的需求是在儲存文件時能自動備份到A、C、D碟的某個路徑下。
由於Word Document沒有像Excel活頁簿的Before_Save事件,
也沒有SaveCopyAs方法(參考最下面的連結),所以要多費點功夫。
Word巨集如下 --

Sub 存檔()
Set a = ActiveDocument
myfile = a.FullName '目前是主文件,把路徑檔名留下來
a.Save
For Each drv In Array("A", "C", "D")
'FileCopy a.FullName, drv & ":\" & a.Name <-注意FileCopy不能處理開啟中的檔案
ActiveDocument.SaveAs drv & ":\" & ActiveDocument.Name
Next
ActiveDocument.Close
Documents.Open myfile '重新開啟主文件
End Sub

此巨集不能放在主文件中,因為SaveAs這個動作會把主文件關閉,
也就無法繼續執行之後的程式了。
此巨集也不能放在其他文件(doc檔)裡, 因為在主文件(或任何文件)
下無法執行其他doc檔的巨集。
那到底要放在哪? Normal.dot是個好所在 (又是它! ~"~)。

把巨集放到 Normal.dot 中
按 Alt+F8 叫出「巨集」對話框,[巨集名稱] 輸入"存檔",
[巨集作用於] 選 Normal.dot,如下圖,然後按 [建立]。

http://home.pchome.com.tw/world/leonblue/forum/wd_add_macro.jpg

將上述巨集內容貼上,如下圖,然後按 Alt+Q 回到Word視窗。

http://home.pchome.com.tw/world/leonblue/forum/wd_vbe.jpg

把巨集設為按鈕以便使用
在任一工具列上按右鍵 > 自訂..,出現「自訂」對話框。
切換到 [指令],在左側選巨集,右側選 Normal.Module1.存檔。

http://home.pchome.com.tw/world/leonblue/forum/wd_macro_button.jpg

將 [Normal.Module1.存檔] 拖曳到任一工具列上,成為一個按鈕。
當然,你可以在這按鈕上按右鍵,把它改成圖示的型式。
以後要存檔時就按這個按鈕,程式會儲存主文件,
並分別在A、C、D碟的根目錄各存一個備份。

再強調一次--
以上都是在Word97環境下做的,2000或2002也適用~
但也許新版本有更理想的方式,有興趣的人可試試..

PS.
為什麼主題"自動存儲備份檔"要加個 (Word版) 呢?
因為之前有一篇[自動存儲備份檔] Excel 版嘛..
想看的話 --
http://www.pczone.com.tw/showthread.php?t=67851

贊助商連結


misol
2003-05-09, 03:58 AM
收到,謝謝

handman
2003-05-09, 08:20 AM
看的不是很董...