第三章 研究方法
第二節 研究工具之簡介
一、 VBA 之簡介
國
立 政 治 大 學
‧
Na tiona
l Ch engchi University
26
第二節 研究工具之簡介
一、VBA 之簡介
VBA 的全名是 Visual basic for application,是附屬於 Office 各軟體的巨集,
利用 VBA(Visual basic for application)來延伸 Office 的功能。例如我們帄常使 用的 Excel 和 Word,其中文書軟體裡的字型、字體大小、顏色…等,這些功能 的背後,都是透過 Office 的 VBA 撰寫支撐而成的。VBA 不能獨力建立系統,
只能附屬於宿主應用程式上一貣操作,需要這些應用程式做支援,操作應用程 式的物件模型以完成動作,Excel、Word、Access…等等就是一種 VBA 的宿主應 用程式,一組 VBA 的程式碼組成巨集,巨集可以操作應用程式的功能,甚至可 以一次性完成許多應用程式的操作,也可以擴充應用程式的功能。VBA 替不同 的應用程式提供了統一的程式語言和開發環境,一旦熟悉 VBA 的使用方式後,
使用者可以應用到其它內建有 VBA 的應用程式中。物件、事件和屬性這三個是 組成 VBA 的要素。
下列將介紹物件、事件和屬性這三個要素:
(一) 物件
物件可以當作是一個實體,在帄常使用的 Excel 和 Word 中,可以使用滑鼠 操作的按鈕、功能表都是物件,可以撰寫程式來控制它。例如我們在 Office 的 Excel 中常用的物件有:活頁簿(Workbook)、工作表(Worksheet)、活頁簿集 合(Workbooks)…等。
‧ 國
立 政 治 大 學
‧
Na tiona
l Ch engchi University
27
(二) 屬性
屬性代表的是物件的外觀和所擁有的特徵,例如字型、字體大小、顏色…
等,這些都算是屬性。不同的設定,可以使某個物件所呈現的外觀有所不同。
不同的物件分別有其較常使用的屬性。
(三) 事件
事件代表的是物件可以執行的動作。在帄常使用的 Excel 和 Word 中有很多 不同的物件,但每個物件有的事件,並不代表所有的事件都被物件所有。意思 就是,A 物件擁有 a 事件,但並不代表 B 物件也擁有 a 事件。
本次研究,主要是使用 Excel VBA,微軟(Microsoft)公司在 Excel 引進 VBA 後,著實的擴展了 Excel 的功能,Excel VBA 基本語法包括資料類型、運 算元、程式結構、語句結構和錯誤處理等等。VBA 頇操作 Excel 的物件模型以 完成動作,Excel 的物件模型包括活頁簿、工作表、儲存格範圍、圖表、圖型、
工具列和功能表等等,每一種物件都分屬於不同層級的物件,這些不同層級的 物件皆環環相扣,一層包含著一層,因此要使用 VBA 則必頇熟悉物件層級的位 置,並且瞭解物件的屬性和使用方式(圖 3-2 Excel VBA 框架模型)。VBA 的 編輯環境分成三種視窗,分別是專案視窗、屬性視窗和程式碼視窗。(圖 3-3 Excel 的 Visual Basic 編輯器)其中專案視窗是將所有撰寫的 VBA 巨集當成專案 的形式來管理;屬性視窗則是顯示我們選到的物件的屬性清單;程式碼視窗即 是撰寫程式的視窗,可以做修改或編輯。
‧
Worksheet 物件 Range 物件‧ 國
立 政 治 大 學
‧
Na tiona
l Ch engchi University
29
圖3-3 Excel 的 Visual Basic 編輯器 代碼 1-專案視窗、代碼 2-屬性視窗、代碼 3-程式碼視窗