Presentation is loading. Please wait.

Presentation is loading. Please wait.

5. 瞭解VBA的語法.

Similar presentations


Presentation on theme: "5. 瞭解VBA的語法."— Presentation transcript:

1 5. 瞭解VBA的語法

2 5.1 錄製巨集的限制 會錄製到不必要的預設值 容易錄製了冗長的操作 只能錄製特定執行範圍的巨集 無法錄製需要判斷或重複執行的巨集

3 會錄製到不必要的預設值

4 容易錄製了冗長的操作

5 只能錄製特定執行範圍的巨集 只能使用VBA來 協助完成巨集

6 無法錄製需要判斷或重複執行的巨集 突顯成績不及格的

7 5.2 VBA的基本用語及語法 程序 巨集是能自動執行的應用程式的代名詞 但在VBA中,巨集錄製的記錄稱之為「程序」 例如:
Sub Macro1() With Select.Font .Name = “Times New Roman” .FontStyle = “粗體” .Size = 14 End With End Sub

8 物件 任何可以利用的工具,都是由物件所組成的 Excel 也是一樣,是多個物件的集合
例如汽車是車身、輪胎和引擎等的集合 Excel 也是一樣,是多個物件的集合 以 VBA 撰成的程序將替代使用者操作 Excel 物件,也就是說 VBA 就是記載如何操作 Excel物件的程式語言

9 屬性 「屬性」是物件的一部份,我們可以把它當成物件的「規格」來看待 所以改變屬性(規格)的值,相對物件就會跟著改變 規格(屬性) 值 車型
Honda CRV 工作表名稱 Sheet1 車寬 1728mm 儲存格 70像素 顏色 字體顏色

10 查詢屬性的值 例如將工作表(1)的名稱記錄到myName的變數中 myName = Worksheets(1).Name 變數 物件 屬性

11

12 變更屬性的值

13 「屬性」的值 實務上,有些屬性值只能查詢,但不能設定 比如說,活頁簿上工作表數量 ○ myNo = Sheets.Count (可以查詢)

14 方法 在定義上,方法為「特定物件的程序」 簡單來說,可以對物件下達命令的動作(或指令),就稱為方法

15

16 使用引數讓方法對物件下達的命令更加精準 例如踩油門的動作,對「油門」物件執行「踩下去」的動作,那到底要踩多深(加速到多少)?
依據行車狀況,可能需要下達的命令是「踩下油門,直到車速到達時速50公里」

17

18 5.3 容器 Excel 物件的階層關係 以「儲存格」這個物件來看 儲存格是工作表的子物件,他不是圖表工作表及工具列的子物件
也就是說儲存格物件只和工作表有從屬關係 工作表為儲存格的父系物件 儲存格為工作表的子系物件 若以活頁簿和工作表相較 工作表的角色為活頁簿的子系物件

19

20 容器? 駕駛在A車內,那啟動A車,只需對駕駛下達「請發動引擎」,A車就會啟動了 那如果要發動B車怎麼辦? 對駕駛說: 「請發動B車 的引擎」

21 從Excel的角度來看下面的例子 Range(“A1”).Value = “VBA” 這個陳述式的意思是要在儲存格”A1”中輸入「VBA」

22 若我們要在非使用中,其他工作表的儲存格內輸入資料,就一定要指定活頁簿及工作表的名稱

23 集合的觀念 在Excel中,有時你並不只使用單一物件,常會遇到使用同種類、多物件的時機 比如,開啟多個活頁簿的時候
同樣的,使用VBA也可對相同種類、複數物件下達命令,這些複數物件稱為「集合」

24

25

26 使用集合與物件的參照值 以下是關閉所有活頁簿的陳述式

27 使用集合的參照值關閉第一個開啟的活頁簿

28 前頁(1)與(2)的差異在於「workbooks」複數物件與「workbook」單數物件
從邏輯上來看,從單一物件中指定物件是沒有意義的 所以從(1)可以得知VBA的物件參照方式為

29 索引編號的參照 指定名稱的參照

30 Review 什麼是「程序」? 什麼是「物件」? 什麼是「屬性」? 什麼是「方法」? 什麼是「容器」? End


Download ppt "5. 瞭解VBA的語法."

Similar presentations


Ads by Google