昱得資訊工作室
麻辣學園
歡迎光臨, 訪客. 請先 登入註冊一個帳號.
您忘了 啟用您的帳號嗎?
2008-07-25, 04:29:37
首頁 說明 登入 註冊 贊助論壇 想當作者?
新聞: 請會員來訪時務必完成登入,為維護論壇品質,將不定期刪除長時間未登入的會員!!


+  麻辣家族討論區
|-+  MS Office 系列
| |-+  WORD (版主: leonchou)
| | |-+  [VBA] 自訂存檔方式 / 讀取文件屬性
0 會員 以及 1 訪客 正在閱讀本篇主題. « 上一篇主題 下一篇主題 »
頁: [1] 向下 列印
作者 主題: [VBA] 自訂存檔方式 / 讀取文件屬性  (閱讀 811 次)
leonchou
版主
*
離線 離線

文章: 1160


[VBA] 自訂存檔方式 / 讀取文件屬性
« 於: 2005-04-18, 23:42:26 »

這是網友問我的, 提出來給大家參考 ^^
引用
在Word中保存文件時,如何一次將文件能同時以.DOC和.TXT格式進行保存?
而且還希望象Word一樣從文章中自動提取標題 (註1)。


[方法一] 做成巨集按鈕
 
新增一個巨集, 內容如下--
 
Sub 自訂存檔()
1 With ActiveDocument: On Error GoTo 7
2 aa = .BuiltInDocumentProperties(wdPropertyTitle)
3 If aa = "" Then aa = .Range(, Len(.Sentences(1)) - 2)
4 .SaveAs aa, FileFormat:=wdFormatText
5 .SaveAs aa, FileFormat:=wdFormatDocument
6 End With: Exit Sub
7 MsgBox "檔名 " & aa & " 無效, 無法存檔!"
End Sub
 
[說明]
1 引用目前文件. 對使用中的文件作以下的動作.
 以下若發生錯誤 (檔名無效, 無法存檔) 則跳到第 7 行
2 設定變數 aa = 文件屬性 (摘要資訊) 的"標題"
3 若沒有標題則設 aa = 文件中的第一個句子 (不含句號及段落符號) (註1)
4 將文件以 aa 為檔名, 存為純文字檔案 (.txt)
5 將文件以 aa 為檔名, 存為標準 Word 文件 (.doc)
6 結束目前文件的引用, 結束巨集
7 當存檔錯誤時顯示訊息

[工具] → [自訂..] → [指令] → [巨集]
 將此巨集拉出來成為一個按鈕 (你可以更改它的名稱) (註2)
 
存檔時按這個按鈕即可.
 
[方法二] 使用事件巨集,自動執行
 
把上述的巨集內容放到 Application 的 DocumentBeforeSave 事件裡。
這方法的好處是不需另建按鈕,只要依平時習慣存檔,
就會自動引發這個事件巨集而達到所要的功能。
 
但一開始的準備工作較麻煩 (一勞永逸^^),因為 --
事件巨集必需放在所屬的物件模組之中,但
由於並沒有內建的 Application 物件模組 ~
(包括 Word、Excel 或其他 Office 軟体的 VBA 都是如此)
所以必需自行新增一個並宣告為 Application 物件模組,
並且在每次 Word 開啟後要先引用這個模組,才能發生作用。
 
所以呢,程序有點繁瑣... 有人想了解的話再討論好了 Tongue
 
 
[附註]
1. 一般 Word 文件在第一次存檔時, 會以文件 "摘要資訊" 的 [標題]
 做為預設檔名; 若沒有標題, 則以文件的第一句作為預設檔名。
2. 按鈕必需放在任一工具列中, 可放入現有的工具列, 或是自行新增一個。
 按鈕拉出來後, [自訂工具] 視窗未關閉前, 可在按鈕上按右鍵以修改名稱。
3. 為說明之便而在巨集內加上行號, 一般是不需要行號的。
已記錄

頁: [1] 向上 列印 
« 上一篇主題 下一篇主題 »
跳到:  


本頁花了 0.088 秒, 以及 19 次的資料庫查詢.