电竞比分网-中国电竞赛事及体育赛事平台

分享

使用VB實現(xiàn)Excel自動獲取外部數(shù)據(jù)

 快樂的探路者 2014-05-14
Excel表格生成和公式設(shè)置十分強大便利,是一個強有力的信息分析與處理工具。Visual Basic是一套可視化、面向?qū)ο蟆⑹录?qū)動方式的結(jié)構(gòu)化高級程序設(shè)計語言,正成為高效率的Windows應用程序開發(fā)工具。由于微軟的努力,Visual Basic應用程序版可作為一種通用宏語言被所有微軟可編程應用軟件共享。

  Excel面始之初帶有表格處理類軟件中功能最強的宏語言,通過單擊“工具”菜單中的“宏”,選擇宏名來調(diào)用宏過程。隨后發(fā)展至Visual Basic for Application專用版,可制作按鈕、復選框、單選鈕等控件,賦控件以宏名,單擊控件運行宏,事件驅(qū)動方式就Click(單擊)一種。新近推出的Office97套件中的Excel97,在“工具”菜單中選擇“宏”后,就會發(fā)現(xiàn)增加了“Visual Basic編輯器”功能。運用這個新增功能,就完全與Visual Basic編程無異了。在菜單欄上單擊鼠標右鍵,選擇彈出式菜單中的“控件工具箱”,在“控件工具箱”工具條上,單擊待添加的控件按鈕,在工作表中將控件拖曳到所需位置和大小,單擊鼠標右鍵選中“屬性”設(shè)置控件屬性后,雙擊控件就會出現(xiàn)Visual Basic編輯器。選擇該控件的一個事件如Click或Change,編寫程序。在工作表中操作該控件,如鼠標單擊、鍵入字符等,則觸發(fā)相應事件,執(zhí)行相應程序。

  筆者在Excel97平臺,采用Visual Basic應用程序版開發(fā)了一套“通用報表分析系統(tǒng)”。該系統(tǒng)用于擁有眾多子公司的母公司的每月財務(wù)報表合并匯總。所有子公司的統(tǒng)計報表如資產(chǎn)負債表、損益表是由FoxBase編制的財務(wù)軟件生成的dbf文件,取名為ATV001xx.dbf----xx月份資產(chǎn)負債表,ATV002xx.dbf----xx月份損益表等。一個子公司的所有dbf文件放在一個單獨的目錄中,如C:\T\palm1,C:\T\palm2等。母公司每月份生成的匯總報表為TTTyymm.xls(yy----年份,mm----月份),它有“資產(chǎn)負債表”、“損益表”等若干工作表組成。每張工作表是由所有子公司相應的dbf文件的相應項目的數(shù)據(jù)相加而成。只要將dbf文件逐一轉(zhuǎn)化到TTTyymm.xls中去,很容易利用Excel的公式設(shè)置功能生成母公司的每張匯總報表。

  這套系統(tǒng)的關(guān)鍵在于如何將所有dbf文件轉(zhuǎn)換到同一個Excel工作簿中。直接通過“文件”菜單中的“打開”項, 選擇文件類型為dBase文件(*.dbf), 可將dbf文件轉(zhuǎn)換到Excel工作簿中,但這工作簿只存轉(zhuǎn)換而來的一張工作表,其他表都自動關(guān)閉了。另外,通過“工具”菜單中的“向?qū)А?,選擇“文件轉(zhuǎn)換”后, 只是將一系列dbf文件轉(zhuǎn)換為一系列xls文件而已。于是采用建立ODBC數(shù)據(jù)源獲取外部數(shù)據(jù)的辦法, 將dbf文件逐一轉(zhuǎn)換到一個Excel工作簿內(nèi), 且用Visual Basic for Application將轉(zhuǎn)換過程自動化。只要按一下圖1中的“生成報表”按鈕, 就能完成所有dbf 文件的轉(zhuǎn)換, 且利用Excel公式自動計算功能完成所有報表的匯總計算。按“顯示報表”按鈕,選擇表名,可以瀏覽報表數(shù)據(jù)。

  具體的方法是:

  一、 建立ODBC數(shù)據(jù)源

  (1) 打開“數(shù)據(jù)”菜單, 選擇“獲取外部數(shù)據(jù)”, 然后單擊“新建查詢”;

  (2) 在“選擇數(shù)據(jù)源”對話框中, 雙擊“<新數(shù)據(jù)源>”;

  (3) 出現(xiàn)“創(chuàng)建新數(shù)據(jù)源”對話框,輸入數(shù)據(jù)源名稱, 選擇驅(qū)動程序如Microsoft dBase Driver(*.dbf), 單擊“連接”;

  (4) 在“ODBC dBase安裝”對話框中, 單擊“使用當前工作目錄”前的復選框, 去掉缺省( , 單擊“選定目錄(s)”, 選擇子公司存放dbf文件的目錄如C:\T\palm1, 連按“確定”;

  (5) 當出現(xiàn)Microsoft Quary對話框時, 單擊“關(guān)閉”, 退出。不要理會出現(xiàn)的警示信息,因為此時只需建立數(shù)據(jù)源, 并不需要用Microsoft Query查詢數(shù)據(jù);

  (6) 重復上述步驟, 在(4)中改換另一家子公司的目錄, 就為另一家子公司建立一個數(shù)據(jù)源。必須建立所有子公司的數(shù)據(jù)源。
(作者:尤蓓芬 責任編輯:方舟)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多