[VBA] 將【Excel資料】套用至【Word範本】並轉存成PDF檔案

更新於 2024/09/27閱讀時間約 2 分鐘

問題:

前幾天,LINE Meiko微課頻道 社群網友問到一個有關 如何將Excel資料快速套用至一個Word範本內,之後再將此套用完的Word範本檔,另存成一個指定檔名的PDF檔。該網友提到,主要是想省下【合併列印精靈】【個別改PDF檔名】,這兩個步驟的時間。


該網友也提供了 ChatGPT 所產生的 Excel VBA 程式碼,且也有在【設定引用項目】加入了【Microsoft Word 16.0 Object Library】(如下圖),但還是無法順利輸出成PDF檔案。

Excel VBA 要先引用【Microsoft Word 16.0 Object Library】才可使用 Word 物件

Excel VBA 要先引用【Microsoft Word 16.0 Object Library】才可使用 Word 物件



靈感:

因為印象中「合併列印 (Mail Merge)」是 Word 中的一項強大功能,所以才想說在 Word 內寫入 VBA,但以前從來沒有在 Word 內寫過 VBA,一找資料才發現 Word 的 VBA 和 Excel 的 VBA 有些許不同 ! ( 現在想想也理所當然,畢竟物件就不同嘛! )


雖然靠著 ChatGPT 4o 的幫忙,花了一些時間,繞了遠路,終於還是順利搞出用 Word VBA 的方式來完成 !


但 LINE社群 Meiko微課小綠群(粉絲交流群) 的某個高手,
用 Excel VBA 就輕鬆完成了 !!


雖然 社群高手漂亮的解決了這難題,但還有 2個殘留問題 需要解決:

殘留問題1:如何正確替換 Word 功能變數的【<<】和【>>】這兩個符號 ?

殘留問題2:如何在【Excel 增益集】中,也能成功執行該程式碼 ?


首先,針對社群網友提供的原始 ChatGPT VBA 程式碼來 Debug,共解決3個項目:

  1. savePath 最後面少加了一個【\】,加入後就可正常執行並輸出成檔案。
  2. Word的功能變數【<<】和【>>】是特殊符號,要分別用 ChrW(171)ChrW(187) 來代表,不可用鍵盤上的【Shift + ,】和【Shift + .】來做直接輸入。
  3. 新增程式語法來輸出成 PDF 檔案即可。
    ' 保存Word文件 PDF格式 (社群高手寫法)
wordDoc.SaveAs2 savePath & fileName & ".pdf", FileFormat:=wdFormatPDF



  • 方法1、以 Word 為 VBA 程式主體,把 Excel 檔案當資料來源。

優點:

  1. 可在 Word 內編寫 Word VBA 程式。
  2. 可善用 Word 本身完整的強大功能。


缺點:

  1. 需撰寫 Word VBA 程式碼。
  2. 用第一筆 Excel 資料取代掉 原始 Word 的特定內容後,還要想辦法返回 Word 最初的特定內容後,才可進行第二筆的 Excel 資料取代。
  3. 為了解決 缺點1,就是先做一個 Word 範本,直接呼叫開啟此範本來取代特定內容,再另存成 PDF 檔,就可以不用變動到原始 Word。
    但這樣一來就要有三個檔案,一個原始 Word 用來執行VBA,一個 Word 範本,一個 Excel 資料。這樣檔案太多,不好管理。


  • 方法2、以 Excel 為 VBA 程式主體,把 Word 檔案當範本。

優點:

  1. 可在 Excel 內編寫 Excel VBA 程式。
  2. 客製化功能的靈活性高。


缺點:

  1. 需撰寫 Excel VBA 程式碼。


所以,最好的解決方法為 方法2


Midjourney - 【會計函證】圖像的描述。

Midjourney - 【會計函證】圖像的描述。




影片



檔案下載1 - 【VBA程式碼】(Excel xlsm檔)

檔案下載2 - 【純資料檔】(Excel xlsx檔案)

檔案下載3 - 【練習用Word範本】(Word docx檔)




彩蛋

你想回到【過去】的美好時光嗎 ?

之前有一個構想,那就是結合【YouTube、AI、MR】,來創造一個【虛擬且可互動的影像】,活生生又那麼真實地呈現在你眼前。

先透過頭戴式裝置來達成,再來發展至不須戴任何裝置。


如果在很久的未來,真的有這種裝置的話,你最想回到哪個【過去】呢 ?
Oops! 我先說~ 我想回到 25 年前去看一場 小甜甜布蘭妮 的演唱會 !
你呢? 請在下方留言唷 ~

2024/9/26 (四)




參考文獻




以上就是這次的分享,請持續關注  和 Meiko微課頻道,謝謝大家 ~

有任何問題,請到【opa的沙龍】【Excel VBA 情境學習】一起討論有關 VBA 的問題,或加入 LINE社群 Meiko微課小綠群(粉絲交流群)


歡迎您的加入。


內容總結
合併列印
5
/5
avatar-img
128會員
44內容數
Meiko微課頻道主要以辦公室應用為出發點,針對上班族群所遇到的問題進行分享
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
這篇文章分享如何在 Excel VBA 中依照特定位置的數字進行由小到大的排序。藉由社群網友的解答與互動,探索了多種解決方案,包括會計業界專家的經驗以及函數大師的逐步拆解方法。文章中提及了使用 AI 工具如 ChatGPT 的實際應用,顯示科技如何幫助解決問題。
5/5AI
本文介紹瞭如何使用 Power Query 和 Excel VBA 來將【矩陣資料】轉換為【結構化資料】的技巧。透過 Meiko 老師的教學視頻,讀者可以快速瞭解 Power Query 的用法。作者分享運用 Excel VBA 的 ListObject 進行表格的資料處理方法。
5/5結構化資料
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
5/5Excel篩選【空白】的應用
本文介紹了將獨立的Excel檔案轉換為PDF檔的方法,並提供了相關連結和資源,包括Excel教學、VBA自動轉存檔案等。文章中還包含了南宋詞人辛棄疾詞和張忠謀的引言,讓讀者在解決問題的同時得到一些靈感和鼓勵。
5/5張忠謀:常想一二
本文介紹瞭如何使用 Excel VBA 解決規劃求解問題的實際案例,並展示了「回溯算法」(Backtracking) 的應用。通過此案例,專業人士可以更好地理解並利用數據,進而在商業環境中做出更精確的決策。
5/5規劃求解
本文介紹如何使用 萬金油 做出輔助列,以達成下拉選單的要求。將詳細討論如何處理資料範圍變動、萬金油公式和快速新增名稱的技巧。此外,也分享了三個參考影片以供學習。
5/5萬金油公式
這篇文章分享如何在 Excel VBA 中依照特定位置的數字進行由小到大的排序。藉由社群網友的解答與互動,探索了多種解決方案,包括會計業界專家的經驗以及函數大師的逐步拆解方法。文章中提及了使用 AI 工具如 ChatGPT 的實際應用,顯示科技如何幫助解決問題。
5/5AI
本文介紹瞭如何使用 Power Query 和 Excel VBA 來將【矩陣資料】轉換為【結構化資料】的技巧。透過 Meiko 老師的教學視頻,讀者可以快速瞭解 Power Query 的用法。作者分享運用 Excel VBA 的 ListObject 進行表格的資料處理方法。
5/5結構化資料
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
5/5Excel篩選【空白】的應用
本文介紹了將獨立的Excel檔案轉換為PDF檔的方法,並提供了相關連結和資源,包括Excel教學、VBA自動轉存檔案等。文章中還包含了南宋詞人辛棄疾詞和張忠謀的引言,讓讀者在解決問題的同時得到一些靈感和鼓勵。
5/5張忠謀:常想一二
本文介紹瞭如何使用 Excel VBA 解決規劃求解問題的實際案例,並展示了「回溯算法」(Backtracking) 的應用。通過此案例,專業人士可以更好地理解並利用數據,進而在商業環境中做出更精確的決策。
5/5規劃求解
本文介紹如何使用 萬金油 做出輔助列,以達成下拉選單的要求。將詳細討論如何處理資料範圍變動、萬金油公式和快速新增名稱的技巧。此外,也分享了三個參考影片以供學習。
5/5萬金油公式
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
微軟的EXCEL又出了一個新函數了【TRANSLATE】,TRANSLATE這個單字翻譯成中文就是翻譯的意思,他的功能就是"翻譯"。 有了這個函數就可以直接在原有資料進行翻譯,不用再把資料丟到Google翻譯或是GPT了。 🔎函數說明 TRANSLATE(要翻譯的內容,原始語言,翻
Thumbnail
只要會用鍵盤的人,人人都會做EXCEL表格。但是,如果你仔細研究,你或許會發現,工作是否有效率其實可以從一張EXCEL表裡看出來。這篇文章分享幾幾簡單的檢查方法與製作技巧。
在工作中常常會需要用到Excel去整理數據資料,因為近期有在進行作業優化學習,提供網路上10個常用的Excel快捷鍵配置,以及相對應的功能,做為自我複習資料。
Thumbnail
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
Thumbnail
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
Thumbnail
本文介紹瞭如何將Excel圖表轉成圖片,並解決了圖表資料量大時可能出現的錯誤訊息。此外,還分享了ChatGPT 4o (訂閱付費版) 的幫助與成功轉換圖片的經驗。 還有周杰倫關於一技之長的觀點分享,激勵讀者找到自己的優勢和興趣。並提供了相關參考文獻,讓讀者進一步深入瞭解主題。
Thumbnail
在工作職場上輸入資料時,如果輸入的內容可以觀察出特定的規則時,其實可以使用儲存格格式來快速輸入資料。 舉一個例子,再輸入學生班級時,三年二班要輸入4個字,【三】、【年】、【二】、【班】,但其實觀察一下規律,其中的年跟班都是相同的,那麼就能利用這個規則來偷吃步拉 📌設定儲存格格式 選取範圍
Thumbnail
在職場上,我們經常需要使用Excel來處理資料,而條碼則是一種常見的資料識別方式,可以用來標示產品、貨物、文件等。如果可以快速製作出條碼,就可以節省不少時間,讓工作更有效率。本篇文章將教你如何在Excel中快速製作條碼,只要3個步驟,就可以輕鬆完成。
Thumbnail
這篇文章介紹瞭如何使用VBA來控制Powerpoint,以及透過VBA控制Powerpoint的好處,包括動態資料的圖表簡報、改變表格底色、串接API等。文章強調了了解物件和屬性的關係後,就可以開始探索VBA控制Powerpoint的各種可能性。
Thumbnail
在職場上,我們經常需要使用 Excel 表格來處理資料,而自動格式設定可以幫助我們快速將資料整理成一致的格式,讓資料看起來更清晰、更有效率。用 Excel 的快捷鍵自動出現自動格式設定技巧,可以讓我們在更短的時間內套用自動格式,讓工作更輕鬆。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
微軟的EXCEL又出了一個新函數了【TRANSLATE】,TRANSLATE這個單字翻譯成中文就是翻譯的意思,他的功能就是"翻譯"。 有了這個函數就可以直接在原有資料進行翻譯,不用再把資料丟到Google翻譯或是GPT了。 🔎函數說明 TRANSLATE(要翻譯的內容,原始語言,翻
Thumbnail
只要會用鍵盤的人,人人都會做EXCEL表格。但是,如果你仔細研究,你或許會發現,工作是否有效率其實可以從一張EXCEL表裡看出來。這篇文章分享幾幾簡單的檢查方法與製作技巧。
在工作中常常會需要用到Excel去整理數據資料,因為近期有在進行作業優化學習,提供網路上10個常用的Excel快捷鍵配置,以及相對應的功能,做為自我複習資料。
Thumbnail
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
Thumbnail
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
Thumbnail
本文介紹瞭如何將Excel圖表轉成圖片,並解決了圖表資料量大時可能出現的錯誤訊息。此外,還分享了ChatGPT 4o (訂閱付費版) 的幫助與成功轉換圖片的經驗。 還有周杰倫關於一技之長的觀點分享,激勵讀者找到自己的優勢和興趣。並提供了相關參考文獻,讓讀者進一步深入瞭解主題。
Thumbnail
在工作職場上輸入資料時,如果輸入的內容可以觀察出特定的規則時,其實可以使用儲存格格式來快速輸入資料。 舉一個例子,再輸入學生班級時,三年二班要輸入4個字,【三】、【年】、【二】、【班】,但其實觀察一下規律,其中的年跟班都是相同的,那麼就能利用這個規則來偷吃步拉 📌設定儲存格格式 選取範圍
Thumbnail
在職場上,我們經常需要使用Excel來處理資料,而條碼則是一種常見的資料識別方式,可以用來標示產品、貨物、文件等。如果可以快速製作出條碼,就可以節省不少時間,讓工作更有效率。本篇文章將教你如何在Excel中快速製作條碼,只要3個步驟,就可以輕鬆完成。
Thumbnail
這篇文章介紹瞭如何使用VBA來控制Powerpoint,以及透過VBA控制Powerpoint的好處,包括動態資料的圖表簡報、改變表格底色、串接API等。文章強調了了解物件和屬性的關係後,就可以開始探索VBA控制Powerpoint的各種可能性。
Thumbnail
在職場上,我們經常需要使用 Excel 表格來處理資料,而自動格式設定可以幫助我們快速將資料整理成一致的格式,讓資料看起來更清晰、更有效率。用 Excel 的快捷鍵自動出現自動格式設定技巧,可以讓我們在更短的時間內套用自動格式,讓工作更輕鬆。