![VBA創(chuàng)建完美EXCEL舉例[權(quán)威資料]_第1頁](http://file.renrendoc.com/FileRoot1/2014-9/24/9624dc70-2492-42b2-b8ba-c7475b83480b/9624dc70-2492-42b2-b8ba-c7475b83480b1.gif)
![VBA創(chuàng)建完美EXCEL舉例[權(quán)威資料]_第2頁](http://file.renrendoc.com/FileRoot1/2014-9/24/9624dc70-2492-42b2-b8ba-c7475b83480b/9624dc70-2492-42b2-b8ba-c7475b83480b2.gif)
![VBA創(chuàng)建完美EXCEL舉例[權(quán)威資料]_第3頁](http://file.renrendoc.com/FileRoot1/2014-9/24/9624dc70-2492-42b2-b8ba-c7475b83480b/9624dc70-2492-42b2-b8ba-c7475b83480b3.gif)
![VBA創(chuàng)建完美EXCEL舉例[權(quán)威資料]_第4頁](http://file.renrendoc.com/FileRoot1/2014-9/24/9624dc70-2492-42b2-b8ba-c7475b83480b/9624dc70-2492-42b2-b8ba-c7475b83480b4.gif)
![VBA創(chuàng)建完美EXCEL舉例[權(quán)威資料]_第5頁](http://file.renrendoc.com/FileRoot1/2014-9/24/9624dc70-2492-42b2-b8ba-c7475b83480b/9624dc70-2492-42b2-b8ba-c7475b83480b5.gif)
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
VBA 創(chuàng)建完美 EXCEL 舉例 本文檔格式為 WORD,感謝你的閱讀。 VBA 確切地講,是一種自動(dòng)化語言,它可以使常用的程序自動(dòng)化,可以創(chuàng)建自定義的解決方案。在 Office 2000 中,宏語言 VBA 適用于所有應(yīng)用程序,包括 Word 、 Excel、 PowerPoint、 Access、 Outlook 以及 Project,基于Excel、 Word 的 VBA 小程序更是不計(jì)其數(shù),我們甚至還可以將EXCEL 用做開發(fā)平臺(tái)實(shí)現(xiàn)應(yīng)用程序。 【關(guān)鍵詞】 Excel VBA 編程 導(dǎo)入數(shù)據(jù) 在 90 年代早期,每個(gè)需要自動(dòng)化的應(yīng)用程序都有不同的自動(dòng)化語言,比如 EXCEL 的宏語言來使 EXCEL 自動(dòng)化, WORD BASIC 使 WORD 自動(dòng)化等等,這給人們學(xué)習(xí)使用各種應(yīng)用程序帶來不便,于是微軟決定開發(fā)一種通用的自動(dòng)化語言,這就是 Visual Basic For Application( VBA)。 VBA 使 Office 中的 Word、 Excel、 Access、Powerpoint 這些軟件的應(yīng)用更加高效,例如:通過一段 VBA代碼,可以實(shí)現(xiàn)畫面的切換;可以實(shí)現(xiàn) 復(fù)雜邏輯的統(tǒng)計(jì)(比如從多個(gè)表中,自動(dòng)生成按合同號(hào)來跟蹤生產(chǎn)量、入庫量、銷售量、庫存量的統(tǒng)計(jì)清單)等。 VBA 針對(duì)特定軟件時(shí)操作更靈活,最典型的是 excel 的 VBA,它可以直接引用 excel 函數(shù),運(yùn)行一些針對(duì) excel 的指令, 使 excel 操作界面人性化,還可以迅速的實(shí)現(xiàn)多個(gè)步驟的手工操作。 1 用 excel 做開發(fā)平臺(tái)實(shí)現(xiàn)應(yīng)用程序的原因 在 excel 環(huán)境中基于應(yīng)用程序自動(dòng)化有哪些優(yōu)點(diǎn)呢? 首先使用 VBA 可以實(shí)現(xiàn)的功能有自動(dòng)化重復(fù)的任務(wù)、自定義excel 工具欄,菜單和界面、簡(jiǎn)化模板的使用、創(chuàng)建 報(bào)表及對(duì)數(shù)據(jù)進(jìn)行復(fù)雜的操作和分析等等。其次用 excel 作為開發(fā)平臺(tái)可以連接到多種數(shù)據(jù)庫,由于 excel 界面大家都比較熟悉,它內(nèi)置了大量函數(shù)再加上本身功能都比較強(qiáng)大,包括打印、文件處理、格式化和文本編輯等,這些都是我們自定義excel,使其成為開發(fā)平臺(tái)的原因。 我們?cè)谟闷渌Z言開發(fā)應(yīng)用程序時(shí),一些基本功能的模塊,包括文件的打開和保存,打印,復(fù)制等都是需要自己去編寫,而用 excel 作為開發(fā)平臺(tái),則由于 excel 已經(jīng)具備這些基本功能,我們只需要使用它。 2 excel 的 VBA 編程功能舉例 在 excel 中適當(dāng)?shù)厥褂?VBA 編程可以大大增強(qiáng)其交互功能,達(dá)到意想不到的效果,如:在 Excel 中應(yīng)用 VBA 批量導(dǎo)入數(shù)據(jù)。 2.1 導(dǎo)入數(shù)據(jù) 我們要把一系列文本格式的數(shù)據(jù)文件導(dǎo)入到 Excel 中作為一條記錄,也就是一行。那么,通過打開 Excel,然后開始錄制宏,然后定位到需要的位置,讀入需要的信息就可以了。首先打開文件,通過導(dǎo)入文本文件向?qū)?,讀入數(shù)據(jù),將特定單元格的數(shù)據(jù)拷貝到一個(gè)目標(biāo) Excel 文件中,然后關(guān)閉這個(gè)文本文件,停止錄制宏。運(yùn)行了一下這個(gè)宏,需要的數(shù)據(jù)都導(dǎo)進(jìn)來了。 2.2 導(dǎo)入成批數(shù)據(jù) 怎么樣把所有的數(shù)據(jù)文件都導(dǎo)入進(jìn)來。比如一組“d*8.txt” 、 “d*9.txt” 、 “d*51.txt” 之類的文件,打開剛剛上面錄制的宏,文件名最后 2 位從 46到 89,那么我們需要寫一個(gè) i 從 1 到 44的循環(huán),把讀入文件部分的文件名改為: d* ( i + 45 ) .txt把粘貼目的地( range)表示行數(shù)的數(shù)字用 i 替換。執(zhí)行按鈕,數(shù)據(jù)導(dǎo)入成功。 2.3 導(dǎo)入不同的文件的數(shù)據(jù) 通過一個(gè)打開文件對(duì)話框,選擇一系列文件,然后將文件全路徑存入 一個(gè)集合或數(shù)組,然后循環(huán)讀出文件就可以了。首先創(chuàng)建了一個(gè)窗體,然后放置了一個(gè)按鈕,將CommonDialog 控件引入工程,添加到窗體,在按鈕的點(diǎn)擊事件里加入如下代碼: Dim strFiles As String, i As Long With CommonDialog1 .Flags = H200 H80000 可以選擇多個(gè)文件 .ShowOpen If .FileName Then strFiles = .FileName End If End With 分割返回值,返回值為以 ASCII 碼為 0 的分割的字符串 字符串第一個(gè)為路徑,之后為單個(gè)文件名 Files = Split( strFiles, Chr( 0) For i = 1 To UBound( Files) Step 1 Files( i) = Files( 0) Files( i) 連接路徑和文件名,組成文件數(shù)組 Next i 最后的文件列表保存在 Files 數(shù)組里。后面的部分就簡(jiǎn)單了。 For i = 1 To UBound( Files) Step 1 strFilename = Files( i) DoImport strFilename Next i 把原來的宏修改后保存在 DoImport 這個(gè)過程里,傳入文件名即可導(dǎo)入這個(gè)文件,循環(huán)導(dǎo)入所有文件就可以了。 3 提高 VBA 程序運(yùn)行效率的方法 Microsoft office 辦公軟件在我們的生活中得到了廣泛應(yīng)用,現(xiàn)在隨著 office 辦公軟件的 版本不斷提升,功能不斷完善,在 office 辦公軟件平臺(tái)上開發(fā)出的的 VBA 應(yīng)用程序越來越多。但是 VBA 是一種宏語言,它的運(yùn)行速度給我們帶來了很大的限制。因此 VBA 編程的方法直接關(guān)系到 VBA 程序運(yùn)行的效率,為了提高 VBA 程序運(yùn)行效率,可以使用下面的一些的方法: 3.1 盡量使用 VBA 原有的屬性、方法和 Worksheet 函數(shù) 在編程前我們應(yīng)盡可能多地了解 excel 對(duì)象的屬性、方法, excel 對(duì)象特別多,對(duì)應(yīng)的它的屬性、方法、事件就更加多了,如果我們不全部了解它們的話,可能在編程過程中經(jīng)常編寫與 excel 對(duì)象的屬性、方法相同功能的 VBA 代碼段,當(dāng)然我們編寫的這些代碼段的運(yùn)行效率顯然與 excel對(duì)象的屬性、方法完成任務(wù)的速度相差甚大。例如用 Range的屬性 CurrentRegion 來返回 Range 對(duì)象,該對(duì)象代表當(dāng)前區(qū)。(當(dāng)前區(qū)指以任意空白行及空白列的組合為邊界的區(qū)域)。而同樣功能的 VBA 代碼需數(shù)十行。 3.2 盡量減少使用對(duì)象引用,尤其在循環(huán)中 每一個(gè) excel 對(duì)象的屬性、方法的調(diào)用都需要通過 OLE接口的一個(gè)或多個(gè)調(diào)用,這些 OLE 調(diào)用都是需要時(shí)間的,減少使用對(duì)象引用能加快 VBA 代 碼的運(yùn)行。 3.3 減少對(duì)象的激活和選擇 錄制宏里面對(duì)象的激活和選擇都用的比較多,例如Workbooks( XXX) .Activate、 Sheets( XXX) .Select、Range( XXX) .Select 等,事實(shí)上大多數(shù)情況下這些操作不是必需的。例如: Sheets( Sheet3 ) .Select Range( A1 ) .Value = 100 Range( A2 ) .Value = 200 可改為: With Sheets( She et3 ) .Range( A1 ) .Value = 100 .Range( A2 ) .Value = 200 End With 3.4 關(guān)閉屏幕更新 關(guān)閉屏幕更新是提高 VBA 程序運(yùn)行速度的最有效的方法,可以縮短運(yùn)行時(shí)間 2/3 左右。關(guān)閉屏幕更新的方法: Application.ScreenUpdate = False , VBA 程序運(yùn)行結(jié)束時(shí)再將該值設(shè)回來: Application.ScreenUpdate = True。 參考文獻(xiàn) 1李 政,梁海英,李昊 .VBA 應(yīng)用基礎(chǔ)與實(shí)例教程 M.北京:國防工業(yè)出版社, 2005: 46-136. 2呂洪升 .常見數(shù)值計(jì)算在 excel 的 VBA 中實(shí)現(xiàn) J.巢湖學(xué)院學(xué)報(bào), 2008. 3楊東遠(yuǎn) .VBA 在 excel 水文數(shù)據(jù)處理中的應(yīng)用 M.交通部天津水運(yùn)工程科學(xué)研究所出版社, 2008. 作者單位 廣東省工商高級(jí)技工學(xué)校 廣東省韶關(guān)市 512200 閱讀相關(guān)文檔 :淺談地理新教師前三年自身發(fā)展方向 關(guān)于建設(shè) “ 書香校園 ” 的幾點(diǎn)成功做法 依托行知理論推進(jìn)家園互動(dòng) 點(diǎn)滴談 同在藍(lán)天下 共享雨露情 班級(jí)管理策略 PTN 在城域傳送網(wǎng)中的應(yīng)用 班級(jí)文化建設(shè) 山重水復(fù)疑無路 柳暗花明又一村 BGP 路由協(xié)議在鐵通互聯(lián)網(wǎng)中的應(yīng)用 基于 HMC833 的小數(shù)分頻頻率源設(shè)計(jì) 應(yīng)用 Web 數(shù)據(jù)挖掘技術(shù)進(jìn)行電子商務(wù)的分析 自動(dòng)氣象要素站維修實(shí)踐 基于 PHM 的電子系統(tǒng)測(cè)試性設(shè)計(jì)與故障診斷技術(shù) 互聯(lián)網(wǎng)技術(shù)與電信網(wǎng)技術(shù)研
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 04 天津卷 (2024-2020) 近五年高考真題滿分作文匯編
- 口腔護(hù)理崗位介紹
- 甘肅省定西市2023年八年級(jí)《語文》上學(xué)期期末試題與參考答案
- 軟件測(cè)試中的數(shù)據(jù)安全問題及試題及答案
- 2025年考試相關(guān)法律與政策試題及答案
- 開源測(cè)試工具的利用價(jià)值試題及答案
- 2025年初級(jí)會(huì)計(jì)師《初級(jí)會(huì)計(jì)實(shí)務(wù)》黃金密訓(xùn)卷一
- 網(wǎng)上合同協(xié)議書怎么下載
- 編程實(shí)踐中的常見挑戰(zhàn)與解決方案試題及答案
- 測(cè)試數(shù)據(jù)管理的策略試題及答案
- 廣東省潮州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)
- 代領(lǐng)畢業(yè)證委托書模板(通用6篇)
- 預(yù)拌混凝土運(yùn)輸單(正本)
- 服務(wù)器驗(yàn)收?qǐng)?bào)告
- 裝配式建筑設(shè)計(jì)施工總結(jié)PPT(127頁)
- [安徽]高速公路改擴(kuò)建工程交通組織方案(155頁)
- 張齊華:《平均數(shù)》課件
- 部編版四年級(jí)語文下冊(cè)第五單元復(fù)習(xí)教案設(shè)計(jì)
- 《鐵路線路里程斷鏈設(shè)置和管理規(guī)定》
- 21世紀(jì)音樂教育發(fā)展趨勢(shì)——問題與對(duì)策2004年音樂教育國際學(xué)術(shù)會(huì)議在上海音樂學(xué)院召開
- 中國字-中國人-歌詞
評(píng)論
0/150
提交評(píng)論