




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
式、調用方式、保存方式、查詢方式,以及VBA程序的基本結構等內容,對這些應用有所認識后,從本章開始正式接觸ExcelVBA編程。VBA中的四大基本概念,此后的一切高級應用都是這四大概念的延伸,4.1ExcelExcelExcel常用對象的,一切操作皆以對象為基礎。如果沒有了對象,VBA編程就失去了存在價值。ExcelExcel用戶眼前。物體是能看見的,或者能感受到它的存在。Excel中的單元格、工作表、工作簿、窗口、批注、圖表、藝術字、菜單等都是對象,一個框就是一個對象,Excel本身也是一個對象。事實上,Excel中也有一些比較隱蔽、難以判斷的對象。例如通過<Ctrl+F3>組合鍵定義的名4-1對象類 對象類
代表嵌入到工作表中的圖形對象,包括自選圖形、OLE對象、、圖表、藝術 格式的工作簿,則只有65536256個。表函數(shù)對象Worksheetfunction和字體對象Font也不存在集合,只能單個。EndEndSub即可。該序號不能小于1、不能大于對象集合的總數(shù)量。語法如下:對象集合(序號 在圖4.1中展示了工作表序號的編號方式。4.13個工作表,使用Worksheets(0)Worksheets(4)都會出錯。 End因此整句代碼表示在信息框中顯示活動工作表第3個批注的內容。本例文件參見光盤:..\第四章\4-1獲取第3個批注內容 Cells代表單元格集合,可以通過序號集合中的任意一個單元格。序號是先橫向后縱向計 End則代表名稱為3的工作表,兩者含義大相徑庭。知識補充:單元格對象的寫書方式比較特殊,它的對象集合是Cells,可以通過序號作參數(shù)引用單個單元格對象,例如Cells(5)CellsCells("B5")Excel提供了Range("地址")這種形式的單元格方式,從而所見即所得,可通過參數(shù)了解它所的單元格對象的地址,例如Range("A1")Range("b2:c10")Range("C:D")等。Excel別的對象即Excel應用程序本身,其對象名稱為Application。在它的下層有工作簿對象(類別名稱為Workbook)、窗口對象(類別名稱為Window)、框對象(類別名稱為活動工作表對象(此對象的寫書方式是Activesheet)等。工作簿級別的名稱對象(Name)、樣式對象(Style)、活動工作表(此對象的寫書方式是Activesheet)等。列對象(列的集合用Columns表示,可通過參數(shù)單個列)、頁面設置對象(類別名稱為PageSetup)、分頁符對象(HpageBreak)、圖形對象(Shape)、工作表及級的名稱對象(類別名稱為Name)等。Application對象Workbook對象Worksheet對象Rows/Columns對象Range對象Name為A的工作表名稱可用代碼“Worksheets(1).Names("A")”來實現(xiàn)。ExcelVBA為了簡化方式,允許通過Application對象直接 稱,因此Application.Names("A")和Application.Names("B")也能 Activesheet的下級對象,然而它們兩者是不同的。ApplicationActiveSheet代表ApplicationActiveSheetWorkbookActivesheetExcel允許同Application對象的下層對象時,Range只代表活動工作表中的單元格;當作為工作表對象Worksheet的下層對象時,Range可以代表任何工作表中的單元格,因此“Worksheet對象.Range”大于“Application.Range”對象。按<Alt+F11>組合鍵進入VBE窗口。SubWorksheet對象Range對象的值MsgBoxWorksheets("Sheet1").Cells(1)'Sheet1A1的值MsgBoxWorksheets("Sheet2").Cells(1)'Sheet2A1的值MsgBoxWorksheets("Sheet3").Cells(1)'Sheet3A1的值EndSubApplication對象Range對象的值MsgBox End3A1單元格的值,而第二個過程只 Worksheets(1).Cells(10)—— 第1個工作表的第10個單元格。Cells(2).Comment——第2個單元格中(B1單元格)的批注。對象名稱 Subtest()'Subtest()'代碼存放位置:模塊中Worksheets(1).Cells(10)EndVBA而言,一句完整的代碼必定有一個動作,例如賦值、修改某個屬性、打開或者關閉Range("A1")=123——對單元格A1賦值,此處的等號表示賦值,也算是一個動作。Excel將當前處于激活狀態(tài)的對象定義為活動對象,活動對象是可以直接的,不用指定名活動窗口ActiveWindow、活動工作簿ActiveWorkbook。4.2活動工作表EndSub以使用代碼“MsgBoxWorksheets(3).Name”。 再使用代碼“ActiveSheet.Cells(1)=123”,而是簡化為“Cells(1)=123”。工作簿只有一個。活動工作簿的書寫方式是ActiveWorkbook。4.3活動單元格(C4)Activecell。例如以下過程表示向活動單元格中添加一個ActiveCell都不允許被忽略:SubSub批注End 在本書的第9章中提供大量的案例。方法都是動詞,例如創(chuàng)建、刪除、關閉、插入、激活、計算、、查找等。以下是以下是Worksheet對象的部分方法:Worksheets("Sheet2").Move——移動工作表Sheet2。Workbook對象的部分面以查詢Workbook對象的方法與屬性為例,介紹具體的操作步驟。在VBE界面中單擊菜單中的“幫助”“VisualBasicforApplications幫助”法、屬性和列表,如圖4.4所示。
VBA為用戶提供了對象的屬性與方法列表,錄入代碼時會自動彈出該列表,用戶可以從列表后可以調用工作表相關的一切方法與屬性。在圖4.5中帶有綠標的是方法,帶有手屬性與方法列表如圖4.6所示。圖4.5與工作表相關的方法與屬 圖4.6單元格對象的方法與屬多了一個文件,新文件的路徑與原文件不同不代表修改了原文件的FullName屬性值)。稱,如果工作簿已保存,那么可將工作簿路徑一并輸出到A1單元格中。Name屬性是可讀、可寫的屬性,因此既可以工作表的Name屬性又可以隨意修改該屬性值。Worksheets(1).Name="分表"'將第一個工作表重命名為“分表”Worksheets(2).Name="總表"'將第二個工作表重命名為“總表”學習PasteSpecial方法的正確方式。選擇A1單元格,然后按<Ctrl+C>組合鍵A1的值B1單元格,單擊鼠標右鍵,從彈出的右鍵菜單中選擇“選擇性粘貼”“數(shù)值”雙擊“模塊1”,可在模塊中看到以下代碼:SubSub宏1()EndSub 而“Selection.PasteSpecial”表示將 對象選擇性粘貼到當前選區(qū)中,其后面的部分屬于PasteSpecial方法的參數(shù)。VBA的幫助窗口,以“Range.PasteSpecial”為關鍵字進行查詢,從而可以得到以 Range.PasteSpecial4個參數(shù)分別對應于要粘貼的內容、粘貼時的操作方式、是否跳過空白單元格,以及是否轉置4個項目。而“選擇性粘貼”框中正好 4.7Re.astSpeialSubSub宏2()Selection.DeleteShift:=xlUpEndSelectionRange,表達式 4.8象的方式解決問題,將對象Selection重置為整行或者整列。4.3操作這些對象。學習VBA其實就是用對象的方法去操作對象,以及讀、寫對象的屬性。本章對進行簡要的闡述,在本書的第9章中會有大量關于的綜合應用。PrivatePrivateSubEnd PrivateSubEnd圖4.9工作簿過程的存放位 本章和第8章主要講述工作簿和工作表。由于應用程序的應用比較復雜,需要件則會出現(xiàn)在本書的第17章中。應用程序對象、工作簿對象、工作表對象的被稱作應用程序、工作簿和工作表事件,它們之間是有層級關系的,應用程序包含工作簿、工作簿包含工作表。當觸發(fā)工作表時,同時也觸發(fā)工作簿和應用程序,當觸發(fā)工作簿時也會觸發(fā)應用程,但是反過來不成立,即觸發(fā)高級別時不一定觸發(fā)低級別。表4-2工作簿一 名 功能說
在Excel保存或導出指定工作簿中的XML數(shù)據(jù)之后開的Excel工作簿之后,發(fā)生此 在Excel保存或導出指定工作簿中的XML數(shù)據(jù)之
XMLXML數(shù)據(jù)被導入任意一個打開的Excel工作簿之前,發(fā)生此 如果用戶在OLAP數(shù)據(jù)表上深化記錄集或調用行集操作
Excel中的任何超時發(fā)生此在編輯或重新計算(針對包含的單元格)數(shù)據(jù)表中 在針對OLAP數(shù)據(jù)源提交對數(shù)據(jù)表的更改前發(fā)生此 在對數(shù)據(jù)表進行更改之后發(fā)生此任意一個工作表上的選定區(qū)域發(fā)生更改時,將發(fā)生此(圖表工作表上的選定區(qū)域發(fā)生改變時,不會發(fā)生任意一個工作表上的選定區(qū)域發(fā)生更改時,將發(fā)生此(圖表工作表上的選定區(qū)域發(fā)生改變時,不會發(fā)生
表4-3工作表一 Worksheet 在針對OLAP數(shù)據(jù)源提交對數(shù)據(jù)表的更改前發(fā)生此 工作表的代碼必須放在工作表的代碼窗口中,放在其他地方例如模塊中或部分過程由對象和觸發(fā)條件兩部分組成,例如打開工作簿的過程名稱是當滿足Open這個條件時,代碼所在的工作簿就觸發(fā)了“Workbook_Open”。其他的部分工作簿由3部分組成,包括對象、觸發(fā)條件和參數(shù),參數(shù)主要用于獲取 工作表的Change的完整名稱是“Worksheet_Change(ByValTargetAsRange)”,其中Chang的整體含義是改變代碼所在工作表的單元格的值時觸發(fā)Worksheet_Change。Change要理解刪除空白單元格這個動作的原本目的是去“改變”單元格A1中的值,盡管單元格A1中的值 相關的信息。例如Worksheet_Change的參數(shù)Target代 按<Alt+F11>VBE4.10Sheet1口中包含了工作表的SelectionChange和Change的程序外殼。4.11選擇“ChangeApplication.StatusBar="您當前正在修改"&Target.Address&"的值 按<Alt+F11>組合鍵返回工作表界面,進入Sheet1工作表中。Sheet1工作表的任意單元格的值
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度茶樓租賃合同茶樓與茶藝培訓學校合作框架協(xié)議
- 二零二五年度在線教育平臺師資聘用協(xié)議
- 食用菌種植技術服務合同
- 英語語法中的定語從句詳解:九年級英語語法基礎強化教案
- 幼兒園繪本閱讀感悟分享
- 產品分銷銷售服務條款及目標協(xié)定
- 數(shù)據(jù)驅動的環(huán)保產業(yè)發(fā)展戰(zhàn)略協(xié)議
- 提升職場技能與素質
- 數(shù)理化習題集:高三化學知識點強化練習計劃
- 家電產品渠道經(jīng)銷協(xié)議
- 重慶市渝北區(qū)大灣鎮(zhèn)招錄村綜合服務專干模擬檢測試卷【共500題含答案解析】
- GB/T 5915-1993仔豬、生長肥育豬配合飼料
- GB/T 3624-2010鈦及鈦合金無縫管
- 壓花藝術課件
- DB32T4220-2022消防設施物聯(lián)網(wǎng)系統(tǒng)技術規(guī)范-(高清版)
- (新版)老年人健康管理理論考試題庫(含答案)
- 感應加熱操作規(guī)程
- 煤氣設施安全檢查表(修訂)
- XX省血液調配管理辦法
- 微信開放平臺網(wǎng)站信息登記表
- 腦病科中醫(yī)疾病護理常規(guī)(精)
評論
0/150
提交評論