ExcelMail3.0群組寄信軟體介紹(四):寫一封中式直書的邀請卡給老同學
電腦是洋人發明的洋玩意,所以一些設計都是按照洋人的使用習慣去設計,例如文字輸入排版都是橫書為主,所以早期要建立中式直書的電子文書並不容易,許多廠商努力去開發一些符合我們輸寫習慣的文字編輯軟體,結果在前任政府以資訊化及世界接軌為由,規定將政府的公文書改為橫式輸寫,英文公文給老外看依西方的書寫習慣理所當然,但中文的公文是給本國人看,為什麼要用西方人的輸寫方式?在我看來是有一點可惜,其實經過這麼多年軟體開發者的努力,現在建立直書文件這些資訊技術並不難,政府為了屈就於資訊技術而捨棄自己原有文化的獨特性,其實非常可惜,直式書寫中文有其獨特的美感與民族文化的意涵。
我們要如何建立一封傳統的中式書信? 用網路上已經有寫出來將橫書文字排列轉換成直書的程式,將內容進行排列再貼至寄信軟體之中寄出。這個方式有一些缺點,利用重新排列的方式來呈現,好處是文字內容可以進行編輯重複利用,但是缺點是不見得所有信件閱讀軟體能夠正確讀出,很可能因為一個字排列錯誤,整個文字內容都錯了。用圖檔傳送也許是比較好的方式,直書的內容不容易跑掉,在word中我們可以利用直書的文字方塊快速建立直書的內容,而word的文字方塊是可以轉成圖檔資料。所以我們朝這個方向去思考問題解決的方案。於是我在ExcelMail中設計一個可以將word文件以信件方式寄出的功能,只要利用word2007插入直書的文字方塊建立信件,再點選轉換成電子郵件,再啟用ExcelMail即可將信件內容載入,執行寄信之功能,寄出即可得到直書信件。
要達成這樣的功能其實沒甚麼秘密之處,重點就是我們的信件內容要讓讀信軟體看得懂,所以我只是將word信件另存成成xml格式的單一網頁內容,再將內容中部分擷取出來,重組為電子郵件的規格而已。 但是這個方法只能在Word2007的版本使用,之前的word2003是無法使用的,因為xml格式的關係。
另外還有一個進階的問題必須克服,在群組寄信中,如果每封信都一樣那還好解決,因為只要完成一個word檔即可。如果希望每封信內容不一樣,不修改word直書的文字方塊內容就不可行。所以我們還必須設計一個功能,可以在word上進行信件內容轉換,讓我們可以用批次修改信件內容的方式,讓每一個收件者收到不同之內容。這個程式功能設計的概念大致如此,我們用一個實際的例子來示範,從這個例子相信讀者也可以看得出來vba作為offfice系列軟體組合黏膠的角色,其功能強大之處。
舉例來說我要辦一個大學同學會,我要寄一封像下圖這樣的邀請卡給大學同學,要如何做?
1.首先利用word2007以後的版本建立信件檔案,利用直書的文字方塊建立像以下的檔案,如果有比較漂亮的字型可以選擇一些較古典的字型,讓我們的信件更古色古香。注意信件收件者的抬頭”大名”,這是我們要取代的欄位名稱。
存為”同學會邀請函.docx”然後關閉word程式,此檔案為產生批次信件的本體!
2.建立同學通訊錄的Excel工作表如下(我們用不同的網頁郵件信箱,看看收到的信件是否不同),欄位標題分別為
電子郵件
姓氏
大名
3.啟動ExcelMail登入郵件帳號,進行寄信群組的建立(可以參考前ExcelMail3.0介紹前二篇文章),參數設定如下圖:
注意!與前面範例不同處,我們必須新增一個參數選擇『批次取代前文』,因為我們希望每封信件內容中抬頭是每位收件者的大名,所以我們在通訊錄工作表中選取標題為”大名”這個欄位,然後按下『批次取代前文』這個欄位『選取』的按鈕,將選取區的名稱輸入為”大學同學”。
4.再來我們還必須設定一個選項,在『寄送電子郵件』表單功能列中『設定』選項,勾選『啟用批次word信件功能』/『以封裝檔案寄送』
5.設定完所有參數,如果要確認信件沒有錯誤,可以先點選『測試寄信』,寄一封給自己看看是否正確。按下『測試寄信』,在『輸入郵件數』,輸入測試的信件數。
在『選取word檔案』對話框中選擇前面所建之”同學會邀請函.docx”
因為要啟動word程式,可能要等一會兒才會出現以下對話框,因為我們要用Excel工作表中”大名”這一欄的資料,取代word信件中”大名”二字,所以要告訴程式此資料欄位的抬頭(標題列)是那一列,在此範例為第一列,所以我們按確定即可。
程式開始執行寄信,在『信件前文內容』我們會看到寄出去的原始檔案內容,這個是xml格式內容。
6.完成寄信我們至gmail帳號看一下成果。信件內容大致沒問題,但是我們信件主旨打錯一個字,還好沒有寄出去,再改一下。
7.確定沒有問題之後,我們按下『開始寄信』,重覆剛才的步驟,不過因為是正式寄信,程式會直接將選取區的名單直接寄出,不會再問要寄多少封。完成寄信之後,我們看看各家網頁郵件信箱中呈現的內容是否有所不同。
open webmail 看到的是
yahoo 看到的是
livemail 看到的是
8.經過測試各家的電子郵件服務都可以正確呈現我們利用gmail所寄出的信件。
9.2010/12/25 12:30之前下載ExcelMail3.0之網友,請至增益集工坊重新下載,我已經將新的檔案傳至該網站。
歡迎引用,請注明來源出處!