-
[Word] 連續插入多個文字檔
這是網友曾問我的問題:
有100個文字檔 (檔名都不一樣),想要插入文章之中,但是 Word
的插入檔案功能,每次只能插入一個檔案,不知是否可以一次就將
所有的檔案插入??
我找來找去, Word 似乎真的沒有一次插入多個檔案的功能~
只好用巨集來做了...
請新增並執行以下這個巨集,它會詢問檔案存放的路徑,
然後自動將該目錄下所有純文字檔 (*.txt) 插入目前文件裡。
[b]Sub 插入文字檔()[/b]
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
[b]End Sub[/b]
[b][color=green]〔[/color][/b]依程式行號說明[b][color=green]〕[/color][/b]
1 設定變數 mypath = Word 預設的文件儲存路徑.
2 設定變數 mypath = 輸入方塊 (預設為 mypath) 的回傳結果.
3 若在輸入空白或按了取消, 傳回空字串, 則結束巨集;
否則設定以下程式出現錯誤時, 跳到 Z 行
4 因 mypath 代表一個路徑, 若它的結尾不是 \ 符號, 則補上.
5 設定變數 myfile = 在 mypath 路徑下搜尋所有 txt 檔
所得到的第一個檔名。
6 執行迴圈, 直到該路徑下的 txt 檔處理完畢為止.
7 在編輯插入點插入檔案.
8 將變數 myfile 設為下一個找到的 txt 檔.
9 結束 While...Wend 迴圈.
Z 不做任何動作, 只供發生檔案存取錯誤時跳至此處 (等於結束程式)
-
您好
就上所述
有一些 不太了解
如果我要將一目錄中所有的 HTML 檔另存成 DOC 檔
檔名就自動抓檔案/摘要資訊/檔題做為檔名 存檔
要如何做呢
謝謝 教導
-
重點是用[color=red]BuiltInDocumentProperties[/color]取得檔案標題.
不明白的地方查一下VBA Help, 加深印象.
Sub htm_to_doc()
目錄 = "D:\Temp\"
檔案 = Dir(mypath & "*.htm")
While 檔案 <> ""
Documents.Open 目錄 & 檔案
With ActiveDocument
標題 = .BuiltInDocumentProperties(wdPropertyTitle)
If 標題 <> "" Then
.SaveAs Left(檔案, Len(檔案) - 4), wdFormatDocument
.Close
Else: MsgBox 檔案 & " 沒有標題!!"
End If: End With
檔案 = Dir()
Wend
End Sub
-
謝謝教導
目前已完成了
可是它是會用目前的檔案名稱存檔
而不是抓取工具列檔案摘要資訊標題
來做檔案名存檔
-
抱歉, SaveAs那行寫錯了~
如果你有試著了解程式內容, 應該也不難發現..
改成這樣 --
.SaveAs 標題, wdFormatDocument
-
Leon Chou 大大
謝謝 您的教導
我是有看一下程式的內容 可是
不太了解
程式中 這一例 可以改成 開第一個檔的目錄嗎
目錄 = "D:\Temp\"
再問一個問題 就是
當我在存檔的時侯
遇到有空白 可否自行移除
就上方的例子 來講
謝謝
可以介紹我看那 一本書 來學習學習
-
>> 程式中 這一例 可以改成 開第一個檔的目錄嗎..
何謂 "開第一個檔的目錄" ??
目錄 = "D:\Temp\"
D:\Temp\ 是自訂的, 隨你改.
>> 當我在存檔的時侯遇到有空白 可否自行移除..
什麼空白? 整個檔空白? 空格?
>> 可以介紹我看那 一本書 來學習學習..
I did not learn with book, so..
sorry, I have no idea about it.