



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGE1第3頁共5頁利用ExcelVBA生成學生成績單摘要:本文用兩個實例來介紹如何利用MS-OfficeExcel中的編程功能來實現(xiàn)自動化處理學生成績單,使我們輕松的完成打印學生成績單的工作,并在其中穿插介紹一些VBA編程知識。本文首先,簡單的介紹了VBA的開發(fā)環(huán)境,其中本文只對用到的知識進行了介紹,如需詳細內(nèi)容請查閱VisualBasic程序設計書籍。然后,分別詳介了VBA在Excel中的應用,在應用實例中,本文采用了先提出問題,后錄制宏,再分析整理宏的方法,來介紹VBA在Excel中的應用,并且都給出了完整的程序代碼,以方便讀者使用。關(guān)鍵字:ExcelVBA宏代碼當今是信息技術(shù)飛速發(fā)展的時代,人們?nèi)粘9ぷ?、生活的方方面面都在運用信息技術(shù),享受著信息技術(shù)給我們帶來的便利,現(xiàn)在雖不是微軟大旗一統(tǒng)天下,但在日常工作和生活中MS-Office仍然是人們運用最多、最廣的辦公軟件。而在MS-Office中尤其以Word、Excel、PowerPoint的使用率最高,人們對這些軟件的運用程度直接影響著工作的效率,本文以Excel為例,來介紹如何利用Excel中的VBA功能來實現(xiàn)自動化處理學生成績單,使我們輕松的完成許多日常工作。在MS-Office中VBA(VisualBasicforApplications)是一種新的功能強大的宏語言,宏其實是指示W(wǎng)ord、Excel、PowerPoint等執(zhí)行功能的指令集合,在Excel中通過使用錄制宏命令你能錄制新宏,而且可以對已經(jīng)錄制的宏進行編輯修改,你一但學會如何在Excel中錄制和編輯宏,你就掌握了許多在其它應用程序中使用宏所需要的編程技術(shù),也就是說在其它程序中使用VBA。一般情況下你所建立的宏應該適用于同一類的文件,而且對這類文件能夠完成一些通用性的設置工作。一.ExcelVBA應用(一).Excel中打印帶標題的學生成績單:在學校,學生的成績單一般都用Excel來統(tǒng)計打印,因為Excel中提供了大量的公式和函數(shù),方便進行各種計算。但到了設置打印學生個人成績條時,就出現(xiàn)了問題,因為成績單只有一個標題行,不能讓每個學生的成績條都有標題行(如表1)。表1表2通過比較以上兩個表格,我們看出表2每個學生的成績條都有標題行,下面我們就介紹如何輕松制作這樣的表格。因為在Excel中學生的成績是從第二行開始連續(xù)存放的,當打印出來以后,只有第一個學生的成績條中有標題行,而下面的學生只能看到數(shù)字,而不清楚這個數(shù)字是什么科目,解決這個問題,我們可以用復制粘貼的方法,將第一行的標題行復制到每一個學生成績行的上方,但是這個工作量是可想而知的,如果貴校有1000名學生,那你豈不是要復制粘貼1000次,如果學生數(shù)更多……(又要加班)下面我們來用剛才介紹的VBA來簡化這一操作。在Excel中VBA的用法是,利用錄制宏的方法來實現(xiàn),先取得在Excel中這些復制粘貼操作的宏代碼,再選擇其中對我們有用的代碼來構(gòu)成我們需要的程序。1.操作要求:在空白的工作表sheet2中按順序粘貼成績表sheet1的標題行和第一個學生的成績行。2.錄制宏:打開成績文件,執(zhí)行菜單中的“工具—>宏—>錄制新宏”,在sheet2工作表中按順序粘貼標題行和第一個學生的成績行,停止錄制。再執(zhí)行菜單中的“工具—>宏—>宏”對宏進行編輯分析和整理,如下:Sheets("Sheet1").Select'選取sheet1工作表Rows("1:1").Select'代表選定當前工作表中的行,括號中的是行參數(shù),這里是標題行Selection.Copy'返回當前窗口中的選定對象,將選定的內(nèi)容復制Sheets("Sheet2").Select'選取sheet2工作表Rows("1:1").Select'選定要粘貼的位置ActiveSheet.Paste'粘貼標題行Sheets("Sheet1").Select'選取sheet1工作表Rows("2:2").Select'選取成績行(第一名學生)Selection.Copy'復制成績行Sheets("Sheet2").Select'選取sheet2工作表Rows("2:2").Select'選定要粘貼的位置ActiveSheet.Paste'粘貼成績行(第一名學生)通過上述代碼,我們可以看出其工作原理是:先選取標題行,再復制標題行,然后選取要插入行的位置,再粘貼標題行,成績行也是相同的操作。如此循環(huán),一直到最后一個學生的成績行粘貼好就完成了操作。3.分析整理代碼:以上原理明白后,我們用程序?qū)崿F(xiàn)這一過程,這個程序分為兩部分,一部分用于實現(xiàn)將標題行粘貼到工作表sheet2的第1、3、5、7、9……行,另一部分用于實現(xiàn)將學生成績行信息逐條粘貼到第2、4、6、8、10……行,以100名學生為例,代碼如下:Sub完善成績單()dimiasInteger'定義一個變量fori=1to100'循環(huán)100次,實際應用中要改為學生數(shù)Sheets("Sheet1").Select'選取sheet1,sheet1為學生成績信息表Rows("1:1").Select'選取標題行Selection.Copy'復制標題行Sheets("Sheet2").Select'選取sheet2,sheet2為要打印的帶標題行的學生成績表Rows(i*2-1).Select'選取第1、3、5、7、9……行ActiveSheet.Paste'粘貼標題行Sheets("Sheet1").Select'選取sheet1,sheet1為學生成績信息表Rows(i+1).Select'選取學生成績行Selection.Copy'復制學生成績行Sheets("Sheet2").Select'選取sheet2,sheet2為要打印的帶標題行的學生成績表Rows(i*2).Select'選取第2、4、6、8、10……行ActiveSheet.Paste'粘貼成績行NextEndSub以上代碼中,dim代表聲明一個變量,Integer代表這個變量是一個整型變量;Sheets對象代表指定工作簿的工作表;Rows對象代表指定工作表中的行;Copy將指定對象復制到剪貼板;Paste將剪貼板中的內(nèi)容粘貼到工作表的指定位置上;ActiveSheet返回一個對象,該對象代表活動工作簿中的活動工作表(最上面的工作表)。Fornext語句是循環(huán)語句,i是循環(huán)變量,它可以從一個值變到另外一個值,這種變化的兩個相鄰數(shù)值之間的差值由步長決定,這里默認為1,由此可以決定循環(huán)的次數(shù)。因為這里初始值為1,終值為100,所以從1到100一共循環(huán)100次,就是進行100次操作。編輯好這個宏后,以后要用到相同的設置,只要選擇工具—>宏—>宏,運行這個宏,瞬間就完成了操作。如果學生的人數(shù)不一樣,只要將100改變?yōu)樾枰臄?shù)就行了。也許有的讀者說,這個應用是方便,在實際工作中有時要用到兩次考試成績比較的成績單(如表3),怎樣用ExcelVBA來實現(xiàn)呢?那么,下面我們就把上面的程序代碼改進一下。(二).Excel中打印兩次成績比較成績單:表3如表3,標題行下面有兩次考試成績的分數(shù),這樣兩次考試成績一目了然,便于掌握學生的學習情況。這就需要先在成績表中做一些基礎工作,成績表中有三個工作表,月考成績表、期中成績表、比較成績表,其中月考成績表和期中成績表的學生順序要相同,這一點非常重要,否則生成的比較成績表學生成績是錯的。排序可以用學號排序,也可以用姓名排序。下面是完整的VBA代碼:Sub完善成績單比較版()DimiAsInteger'定義一個變量Fori=1To100'循環(huán)100次,實際應用中要改為學生數(shù)Sheets("月考").Select'選取月考表,月考表為學生第一次考試成績表Rows("1:1").Select'選取標題行Selection.Copy'復制標題行Sheets("比較").Select'選取比較表,比較表為兩次考試成績合并的成績表Rows(3*i-2).Select'選取第1、3、5、7、9……行ActiveSheet.Paste'粘貼標題行Sheets("月考").Select'選取月考表,月考表為學生第一次考試成績表Rows(i+1).Select'選取學生成績行Selection.Copy'復制學生成績行Sheets("比較").Select'選取比較表,比較表為兩次考試成績合并的成績表Rows(3*i-1).Select'選取第2、4、6、8、10……行ActiveSheet.Paste'粘貼成績行Sheets("期中").Select'選取期中表,期中表為學生第二次考試成績表Rows(i+1).Select'選取學生成績行Selection.Copy'復制學生成績行Sheets("比較").Select'選取比較表,比較表為兩次考試成績合并的成績表Rows(3*i).Select'選取第2、4、6、8、10……行ActiveSheet.Paste'粘貼成績行NextEndSub以上代碼的原理是,先復制第一次考試的成績表標題行,粘貼到空表中,再依次復制每位學生的第一次考試成績和第二次的考試成績,按順序粘貼到空表中,這樣每位學生的兩次考試成績就合并到一張表里了。這樣比較學生的學習情況就一目了然。其實,不光是Excel,在Word、PowerPoint中都可以用VBA和宏來完成許多簡單重復性的工作,如果有編程基礎的話,還可以實現(xiàn)許多有用的功能,這里就不再詳述了。二.總結(jié):以上,只是Office自動化處理在實際工作中的幾個簡單的應用,下面對VBA做一個簡單的總結(jié)和概括:VBA究竟是什么?更確切地講,它是VisualBasic程序設計語言和VisualBasic編輯器中的開發(fā)工具緊密地與應用程序集成在一起,集成的應用程序包括Word、Excel和PowerPoint等的編程環(huán)境。主要功能歸納為:1.定制VBA允許我們賦予自己喜歡的程序以新的功能,并且能夠讓它們完成一系列相同而又復雜的工作。2.自動化VBA可以使常用的Word、Exce
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國氣云成像攝像儀市場運營現(xiàn)狀與未來投資效益盈利性報告
- 2025-2030中國毛絨系列玩具行業(yè)發(fā)展分析及發(fā)展前景與趨勢預測研究報告
- 2025-2030中國歐米茄3補充劑行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030中國模塊化變焦鏡頭行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 專升本思政重要公式及試題及答案
- 2025-2030中國校準光源行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析研究報告
- 2025年安徽郵電職業(yè)技術(shù)學院單招職業(yè)傾向性測試題庫及參考答案
- 助力專升本2024年思政理論試題及答案
- 2025-2030中國柑桔保果劑行業(yè)市場深度分析及發(fā)展趨勢與投資研究報告
- 消防設施操作員考試解決方案試題及答案
- 基于人工智能的語音康復評估
- 寧夏銀川市銀川一中2025屆高三第一次模擬考試物理試卷含解析
- 《3 我為校園做標識》(教案)-2023-2024學年三年級下冊綜合實踐活動遼師大版
- 2024年廣東省廣州市市中考英語試卷真題(含答案解析)
- 2024機器人分類及型號編制方法
- 福建省普通高中學生學業(yè)水平合格性考試英語學科考試大綱
- 2024年四川省樂山市中考化學試卷真題(附答案解析)
- 人教鄂教版-科學-三年級下冊-知識點
- 《化妝品配方與制備技術(shù)》課件-第10章 唇部美容化妝品
- 2024年浙江省杭州市余杭區(qū)仁和街道編外招聘56人歷年高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 蘇教版五年級數(shù)學下冊第二單元測試卷附答案
評論
0/150
提交評論