在 VBA / 使用Word VBA批次轉換PDF檔使用了一個批次轉換PDF的Word VBA
原理就是利用Word自身另存新檔為PDF的功能
這次是想改成用Excel VBA的方式來處理
在Excel VBA開啟word檔並且使用相關的功能時
必須設定引用Word物件才能正常使用Word VBA的功能
在測試的時候曾經忘記引用
這樣就會造成部分的功能出現錯誤
目前的版本如下
主要是測試核心功能:在Excel裡透過VBA開啟word檔,並且轉檔成PDF
之後再來參考彰化一整天的程式,修改成檔案選取視窗,批次轉換檔案,儲存在相同的資料夾裡
1 2 3 4 5 6 7 8 9 |
Sub pdf() Set wordapp = CreateObject("word.Application") Set wordfile = wordapp.Documents.Open(Filename:="資料路徑\XXX.docx", ReadOnly:=True) wordapp.Visible = True wordapp.Activate wordfile.SaveAs2 Filename:="資料路徑\XXX.pdf", FileFormat:=wdFormatPDF wordapp.Quit End Sub |
基本概念
1.建立word.Application物件
2.透過word.Application物件開啟檔案
3.存檔成PDF
可以將檔案轉存成PDF的方法有2種
2.SaveAs2
兩者的變數名稱有點差異
其實還有ExportAsFixedFormat2,但是不知道為什麼會出現錯誤,猜測可能是版本的問題
4.關閉目前的word.Application物件
備註:
引用項目時,必須注意名稱的命名不能跟關鍵字重複,否則會出現錯誤