leonchou
版主
離線
文章: 1160
|
這是網友曾問我的問題: 有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 不做任何動作, 只供發生檔案存取錯誤時跳至此處 (等於結束程式)
|