国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于VBA的Excel數(shù)據(jù)對Word文檔的自動轉(zhuǎn)換

2015-07-24 14:32李邐常廣炎
電腦知識與技術(shù) 2015年14期

李邐 常廣炎

摘要:Excel作為Office應(yīng)用程序包中的一員,主要功能是針對于電子表格的各種處理。Excel提供了數(shù)據(jù)庫技術(shù)、文字編輯技術(shù)、專業(yè)格式化技術(shù)、圖表技術(shù)、專業(yè)web發(fā)布和查詢技術(shù),并且保存在Excel中的數(shù)據(jù)也可以被其他Office應(yīng)用程序調(diào)用。該文以一個例子說明通過Excel VBA將數(shù)據(jù)傳遞給word軟件并自動生成文檔的方法。

關(guān)鍵詞:Excel;VBA;自動轉(zhuǎn)換

中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2015)14-0197-02

BA即Visual Basic for Application,是新一代Windows應(yīng)用軟件的通用控制語言。VBA起源于VB(Visual Basic),但它是一個對應(yīng)用程序沒有任何限制的獨立工具,VBA不僅可以作為一個宏語言使用在應(yīng)用程序中,還保留了一個可以在應(yīng)用程序之間操作的開放編程工具用來作為結(jié)合層。使用VBA編寫的程序可以復(fù)制到VB中,稍作改動即可在VB中編譯,作為VB程序運行,用來控制其他程序。

VBA是Microsoft Windows應(yīng)用軟件通用的宏控制語言,語法簡單,可直接運用相關(guān)軟件(Word、Access、PowerPoint)的各項強(qiáng)大功能。并且,Excel VBA與Office軟件包中其他軟件的控制關(guān)系,使得VBA不僅可以控制Excel,也可以控制Word、Access等這些包含有對象庫的應(yīng)用程序;同時,綁定在Excel中的VBA不是唯一與Excel對象庫通信的語言,還可以使用宿主于Word等其他應(yīng)用程序中的VBA控制Excel[1]。

Excel包含的眾多對象構(gòu)成了一個有機(jī)整體。其中,應(yīng)用程序(Application對象)包括應(yīng)用程序的各種選項以及當(dāng)前活動的對象,位于最上層,表示整個Excel應(yīng)用程序。Application的下層包括工作簿集合(Workbooks對象)、窗口(Window對象)、對話框(Dialog對象)等; Workbooks的下層又包括工作表(Worksheets對象)、圖表(Chart對象)、名稱(Name對象)等。不同的對象有著不同的屬性和方法以及對應(yīng)的事件,如工作簿集合Workbooks對象有Application、Count、Item等屬性;有添加集合(Add方法)、關(guān)閉集合(Close方法)、打開集合(Open方法)等方法;工作表Worksheets對象有Change事件、Activate等事件。VBA可以通過不同的操作對象的事件來激活不同的應(yīng)用程序;可以通過不同的方法完成不同的功能;也可以通過修改不同對象的屬性來完成特定的工作[2]。

本文主要研究在Excel工作表中的數(shù)據(jù),如何自動轉(zhuǎn)換到Word文檔中,并以指定字段為文件名存儲的方法。

1 Excel工作表的設(shè)計

本文所使用的Excel工作表為某公司的銷售清單(如圖1所示),記錄了該公司每一筆訂單的詳細(xì)情況,包括訂單編號、訂貨日期、發(fā)貨日期、運費、聯(lián)系人、地址、城市和地區(qū)等?,F(xiàn)需要以工作表中“地區(qū)”字段為分類條件進(jìn)行統(tǒng)計匯總,得出各地區(qū)運費情況,并在工作表所在磁盤路徑自動生成以“運費情況-地區(qū)”為文件名的Word文檔。

Excel中可以通過數(shù)據(jù)透視表對數(shù)據(jù)進(jìn)行匯總。數(shù)據(jù)透視表是Excel中提供的數(shù)據(jù)分析處理工具,通過向?qū)Э梢詫ζ矫娴墓ぷ鞅頂?shù)據(jù)產(chǎn)生立體的分析結(jié)果,可以將工作表中數(shù)據(jù)的排序、篩選和分類匯總等操作結(jié)合到一起,通過轉(zhuǎn)換行或列來查看源數(shù)據(jù)的不同匯總結(jié)果。數(shù)據(jù)透視表可以幫助用戶重新組織和統(tǒng)計工作表中的數(shù)據(jù)。

在當(dāng)前的銷售清單工作表中,選定“地區(qū)”字段作為分類依據(jù),兩次對“運費”字段進(jìn)行計算:首先對運費進(jìn)行“求和”運算,得到各地區(qū)運費總和;再對運費進(jìn)行“占總和百分比”運算,得出各地區(qū)運費所占總運費的比率。根據(jù)數(shù)據(jù)透視表所得數(shù)據(jù)創(chuàng)建新的表格區(qū)域作為Word文檔的生成的源數(shù)據(jù),以“華中”地區(qū)為例,使用VLOOKUP函數(shù)得到該地區(qū)運費總和以及運費比率兩行數(shù)據(jù)(如圖2所示)。

在“銷售清單”工作表中添加“生成Word文檔”按鈕,在標(biāo)準(zhǔn)模塊中編寫VBA代碼,自定義子過程WordCDObject,并在命令按鈕的Click事件中調(diào)用子過程WordCDObject。

2 Word模板的設(shè)計

Excel可以根據(jù)現(xiàn)存的Word模板自動生成Word文檔。為了讓W(xué)ord文檔有統(tǒng)一的轉(zhuǎn)換輸出結(jié)果,在編寫VBA代碼前,用戶可以自行創(chuàng)建Word模板,將該模板中幾個重要的字段設(shè)置為書簽(如圖3所示),當(dāng)使用Excel生成Word文檔時,可根據(jù)書簽對應(yīng)的不同內(nèi)容動態(tài)顯示文檔相應(yīng)字段。

當(dāng)用戶點擊Excel工作表中“生成Word文檔”按鈕,即可根據(jù)“地區(qū)”字段生成相應(yīng)的Word文檔,如圖4所示。

4 結(jié)論

本文以一個例子說明通過Excel VBA將數(shù)據(jù)傳遞給word軟件并自動生成文檔的方法,并了解保存在Excel中的數(shù)據(jù)被其他Office應(yīng)用程序調(diào)用的方法。為從事數(shù)據(jù)處理的用戶提供一種思路,并簡化工作中的操作過程,提高用戶的工作效率。

參考文獻(xiàn):

[1] 李輝,郝艷芬,支穎.office高手-Excel2003辦公應(yīng)用[M]. 人民郵電出版社,2006.

[2] 常廣炎,楊彬. 基于Excel VBA 的數(shù)據(jù)處理軟件開發(fā)[J]. 電腦知識與技術(shù),2014(8).