昱得資訊工作室
麻辣學園
歡迎光臨, 訪客. 請先 登入註冊一個帳號.
您忘了 啟用您的帳號嗎?
2008-07-24, 16:15:52
首頁 說明 登入 註冊 贊助論壇 想當作者?
新聞: 為增進論壇品質,全面更新硬體設備,經費有限,請各位踴躍贊助論壇!!


+  麻辣家族討論區
|-+  MS Office 系列
| |-+  WORD (版主: leonchou)
| | |-+  [VBA] 批次插入多個文字檔
0 會員 以及 1 訪客 正在閱讀本篇主題. « 上一篇主題 下一篇主題 »
頁: [1] 向下 列印
作者 主題: [VBA] 批次插入多個文字檔  (閱讀 779 次)
leonchou
版主
*
離線 離線

文章: 1160


[VBA] 批次插入多個文字檔
« 於: 2005-04-18, 23:33:03 »

這是網友曾問我的問題:
 
有100個文字檔 (檔名都不一樣),想要插入文章之中,但是 Word
的插入檔案功能,每次只能插入一個檔案,不知是否可以一次就將
所有的檔案插入??
 
我找來找去, Word 似乎真的沒有一次插入多個檔案的功能~
只好用巨集來做了...
 
請新增並執行以下這個巨集,它會詢問檔案存放的路徑,
然後自動將該目錄下所有純文字檔 (*.txt) 插入目前文件裡。
這個例子也示範了批次處理檔案的基本方式 (Dir)。
PS. 程式行號在此僅供說明,一般並非必要。
 
Sub 插入文字檔()
1 mypath = Options.DefaultFilePath(wdDocumentsPath)
2 mypath = InputBox("請輸入路徑名稱 (例如 C:\Temp):", "插入文字檔", mypath)
3 If mypath = "" Then Exit Sub Else On Error GoTo Z
4 If Right(mypath, 1) <> "\" Then mypath = mypath & "\"
5 myfile = Dir(mypath & "*.txt", vbDirectory)
6 While myfile <> ""
7  Selection.InsertFile mypath & myfile
8  myfile = Dir()
9 Wend
Z
End Sub
 
依程式行號說明
 
1 設定變數 mypath = Word 預設的文件儲存路徑.
2 設定變數 mypath = 輸入方塊 (預設為 mypath) 的回傳結果.
3 若在輸入空白或按了取消, 傳回空字串, 則結束巨集;
 否則設定以下程式出現錯誤時, 跳到 Z 行
4 因 mypath 代表一個路徑, 若它的結尾不是 \ 符號, 則補上.
5 設定變數 myfile = 在 mypath 路徑下搜尋所有 txt 檔
 所得到的第一個檔名。
6 執行迴圈, 直到該路徑下的 txt 檔處理完畢為止.
7 在編輯插入點插入檔案.
8 將變數 myfile 設為下一個找到的 txt 檔.
9 結束 While...Wend 迴圈.
Z 不做任何動作, 只供發生檔案存取錯誤時跳至此處 (等於結束程式)
已記錄

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


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