一、VBA變量
變量是用於保存在程序運行過程中需要臨時保存的值或對象。就相當於我們在操作工作表的時候插入的輔助單元格、輔助列或輔助表一樣。
同工作表的單元格一樣,變量可以接納很多種的數據類型,如其名,程序運行後,變量的值是可以改變的。
如何定義變量?
定義變量可以使用Dim語句:
Dim 變量名 As 數據類型
變量名有一定的命名規則,這裡我就不詳細說明了,需要提醒的是在程序的設計過程中,你可能會定義很多的變量,為了閱讀及修改程序的方便,你定義的變量名盡量能讓人一看就明白這個變量具體代表的是什麼。在Dim語句中,我們可以不必聲明變量的數據類型,直接輸入“Dim 變量名”此時定義的變量將被指定為Variant類型。
但我們在程序設計的過程中,一般應該明確數據的類型,這是一個好的編程習慣,因為指定數據類型後會提高程序的運行速度。
我們可以在模塊中輸入“Option Explict”作為第一句語句來強制聲明所有變量。也可以點“工具——選項”,在選項對話框裡勾選“要求聲明變量”。這樣,VBA在遇到沒有聲明的變量名稱,該語句將導致程序停止。
定義變量除了可以使用Dim語句外,比較常的還有:static語句,Private語句,Public語句。使用不同的語句定義的變量不同的是它們的作用作用域不同,具體為:
(1)如果在一個過程中包含了一個Dim或Static語句,此時聲明的變量作用域為此過程,即本地變量。
(2)如果在一個模塊的第一個過程之前包含了Dim或Prvate語句,此時聲明的變量作用域為此模塊裡所有的過程,也就是在此模塊裡所有的過程都可以使用它,即模塊作用域下的變量;
(3)如果在一個模塊的第一個過程之前包含了Public語名,此時聲明的變量作用域為所有模塊,即公有變量。
變量的作用域是指變量保留其值的這段時間,也稱為變量的生成周期,它決定變量可以用於哪個模塊或過程中。
給變量賦值
用等號(=)是VBA裡的賦值運算符。
比如我們把"大眾計算機!"這個字符串賦給變量A,則直接輸入:
A="大眾計算機!"
對了,你可以在立即窗口裡試一下逐條輸入:
A="大眾計算機!"
Mgbox A
二、VBA的常量
執行過程時,變量的值會發生改變,所以我們稱它為“變量”,但有時候我們需要引用不會發生變化的數據,這就是常量。常量聲明後,不以對它進行再賦值。
聲明常量設定常量的值,需要用Const語句:
Const 常量名 As 數據類型 = 常量的值