excelvba宏的认识和应用.ppt_第1页
excelvba宏的认识和应用.ppt_第2页
excelvba宏的认识和应用.ppt_第3页
excelvba宏的认识和应用.ppt_第4页
excelvba宏的认识和应用.ppt_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

台灣微軟公司台灣微軟公司 軟體顧問軟體顧問 洪士吉洪士吉 編撰編撰 新手入門不用怕,高手應用更拉風 Excel VBA 巨集的認識及應用 用錄的也會通 - 從巨集錄寫出發 巨集的錄寫程序巨集的儲存位置 Excel的巨集錄寫功能,能將使用者對Excel功能表中所選定的命令及 相關的滑鼠動作自動轉換成 Visual Basic 程式語句,從而製作成巨集 程式來供使用者執行。因此,使用者以指定結果的方式來操作 Excel, 即可不費吹灰之力完成VBA巨集的撰寫作業。 編修巨集 相對錄寫與絕對錄寫 透視VBA語言- Visual Basic 編輯環境 程式的窩 - Visual Basic 編輯環境 VBA的敲門磚 - 物件(Object)、屬性(Property)、 方法(Method)和事件(Event) v物件的意義與層次結構 v屬性的意義與例舉 v方法的意義與例舉 v事件的意義與例舉 Run!Run!Run! - 執行巨集 使用 工具/巨集 命令 使用便捷鍵 將巨集指定至工具列上的按鈕 將巨集指定至工作表或圖表上的物件 將巨集指定至表單上的物件 將巨集指定至功能表 將巨集指定至快顯功能表 將巨集指定至 Office 小幫手 將巨集指定至事件中,當事件發生時自動執行 該巨集 在Visual Basic 編輯環境中撰寫程式 在程式碼視窗內內使用英文小寫來輸入關鍵字。 輸入sub及巨集名稱後,當巨集程序不處理引數時,勿 需再輸入”( )”文字,而直接按下 Enter 鍵即可。 使用 Tab 按鍵來縮排巨集程序內的各行程式碼。 每行陳述式中若需輸入運算子(operator)時,其前後勿需 輸入空白。 編修巨集程序時,可使用拖曳方式或快顯功能表來複製 或搬移文字。 利用 自動完成 功能來輔助文字之輸入並使用 自動列 示方法及屬性 及 列出常數 的功能來挑選相互配合的 方法及屬性。 VBA巨集程式的結構 頂端宣告區 設定 VBA Option模組應用範圍 宣告變數 宣告常數 程式區 程式碼 專案視窗內各物件的程式碼視窗所登錄各區段的VBA巨集程式碼有其結 構性。想要瞭解及撰寫VBA 巨集,必須對VBA巨集程式的結構有所認 識。 VBA的陳述式(Statement) 宣告陳述式的用途在於對程序、變數、陣列以及常數等進行命名 以及定義。 宣告陳述式 指定陳述式用於指定數值或運算式給變數或是常數。指定陳述式 通常會包含一個等號(=)。設定屬性值的陳述式也是一個指定 陳述式。 指定陳述式 可執行的陳述式會執行相關的動作。其可以執行函數、方法、迴 圈或從某一區塊的程式碼中做分支執行。 可執行的陳述式 常用的物件、屬性、方法與事件 Excel 應用軟體被切割成上百個物件,且各物件下轄了眾多的屬性與方 法。雖然絕大數的物件、屬性與方法都可以使用錄製方式來產生程式 碼。然而,還是有一些物件及其相關的屬性與方法無法以錄製方式完 成。況且在閱讀或編輯巨集程式碼時,必須對各行陳述式有所暸解, 方能進行相關的編修。 Application 群組物件及其相關方法 Workbooks 群組物件及其相關方法 Windows 群組物件及其相關方法 Sheets 群組物件及其相關方法 Range 群組物件及其相關方法 Workbook_BeforeClose 事件 Workbook_Open 事件 Worksheet_Activate 事件 Worksheet_Change事件 Worksheet_SelectionChange 事件 Chart_SeriesChange 事件 Visual Basic 編輯環境中最佳幫手 - 物件瀏覽視窗 Excel VBA具有數百個物件,而各物件又下轄眾多的屬性、方法及事 件。要想強記所有的屬性、方法及事件不但是不可能且不切實際。 唯有熟悉少數常用的屬性、方法及事件外,對於不熟悉的物件、屬 性、方法及事件,可運用Visual Basic 編輯環境下的物件瀏覽視窗, 來作為諮詢參考的工具。 Excel VBA巨集程式例舉一 各縣市銷售績效報告 設計主控畫面 使用主控畫面工作表,並佈 置若干物件作為介面控制工具。 Range(“選定地區“).Formula = Application.Caller 佈置工作表及圖表 編撰巨集程式 依據繪圖資料工作表內各組 數據,進而繪製相關圖表 。 按地域性將業績資料記錄建立於工作表中,並對此業績資料庫進行彙總報告及圖 形分析,在實務上係十分普遍與實用的作業。本例舉旨在使用臺灣地圖作為操作 介面,就業績資料進行資料匯集、彙總報表及圖形分析。 Excel VBA巨集程式例舉二 各縣市銷售績效報告 設計主控畫面 建立彙總報表及圖表 編撰巨集程式 ActiveSheet.PivotTableWizard SourceType:=xlDatabase, SourceData:= _ “業績記錄資料庫!Database“, TableDestination:=“, TableName:= _ “樞紐分析表1“ ActiveSheet.PivotTables(“樞紐分析表1“).AddFields RowFields:=“品名“, _ ColumnFields:=“日期“, PageFields:=“倉儲單位“ With ActiveSheet.PivotTables(“樞紐分析表1“).PivotFields(“金額“) .Orientation = xlDataField .NumberFormat = “#,#0“ End With 操控樞紐分析表及圖報表 PivotTable物件 範例展示:全球銷售類別分析 1.佈置資料清單。2.建置樞紐分析表及物件連結作業。 3.使用VBA操控樞紐分 析表及圖報表作業。 Active X控制項物件與自訂表單 認識工具箱工具列 使用工具箱編製自訂表單 在工作表中使用控制工具箱工具列 操控指令列 (CommandBar) CommandBar 物件模型 範例展示 操控Office小幫手 Assistant 與 Balloon 物件 範例展示 建立 Excel 增益集 o製作自訂式的Add- In 內建式的Add-In 以VBA 程式碼控制 安裝及使用 Add-In 保護原始程式碼 Addins( “Sample.xla”).Install = True Addins.add “C:Addin Sample.xla” 使用增益功能的優點 提昇執行效率 保護原始程式碼 幕後作業,不干擾使用者 強迫使用者執行WorkBook_Open或 AutoOpen巨集程序 更簡易地存取函數 更易於在Excel Add-In對話方塊中取用 更容易被 Excel 自動載入 關閉離開無雜訊 在Excel內自動啟動其他應用軟體 使用Shell函數啟動其他應用軟體 藉由VBA的Shell函數,可以開啟其他應用軟體並將該應用軟體啟動成 活動中的應用軟體。 使用AppActive函數啟動其他應用軟體 使用AppActivate函數可以將目前的視窗切換到其他的應用軟體視窗中 。不過該應用軟體視窗必須事先已經啟動。 使用Application物件的ActivateMicrosoftAp方 法啟動Microsoft 自家的應用軟體 Application物件的ActivateMicrosoftAp方法具有一系列的xlMicrosoft內建 常數,運用此些內建常數可以啟動Microsoft 自家的應用軟體。 使用Sendkey函數 SenKeys函數可以送出一或多個按鍵訊息到其他應用程式視窗中,就如 同在鍵盤上按下的一樣。 Automation的連結(Binding)方式 Binding是什麼? 當Automation controller向 Automation serve r取得物件時,VBA必須驗 證該物件是否已經存在,而且對該物件所使用的屬性與方法皆為正 確。此種驗證的程序在VBA中稱之為連結(Binding) 事先連結(Early Binding)及事後連結(Late Binding) Early binding occurs at compile time rather than run time Early Binding 的優點 1. Performance。 2. Compile-Ttime Ssyntax Cchecking。 3. Code readability。 4. Viewing objects。 5. Getting help 。 Automation DEMO 使用Excel工作表內資料建立Word文件 使用Excel工作表內資料建立PowerPoint文件 使用Excel工作表內資料建立Word文件 使用Excel操控送Outlook郵件 使用Excel VBA巨集之應用策略 將

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论