各種編程語言里都有常量和變量。常量,即固定不變的值;變量,即隨時(shí)變化的值。 常量的使用,最大的作用是增加可讀性和減少人為錯誤。 而理解和應(yīng)用變量,是學(xué)習(xí)任何編程語言入門的第一步。 常量和變量,都可以簡單理解為內(nèi)存地址的命名。 一、聲明前綴 Dim, Public, Private, Static, Global
Dim相當(dāng)于Private 2.Public 表示聲明的常量、變量是全局的。全局,顧名思義,就是在其他模塊可以直接訪問。 本文最后一節(jié),會提供一個(gè)基本覆蓋本文知識點(diǎn)的樣例。 3.Private 表示聲明的常量、變量是私有的。私有,顧名思義,就是在其他模塊不可以訪問。 4.Static 表示聲明的變量是靜態(tài)的。特征是在過程調(diào)用之間仍能保持其值的變量的數(shù)據(jù)類型。 不建議使用,有興趣的可以看VBA的內(nèi)置案例。 5.Global 這是一個(gè)老版本的聲明前綴,為了兼容性,VB6/VBA6/VBA7里也保留了。 僅能用于標(biāo)準(zhǔn)模塊(Module),效果等同于Public。 批注:①“Dim”的由來 以上5個(gè)跟變量、常量相關(guān)的聲明中,Public/Private/Static/Global都可以顧名思義,很好記憶。但是Dim是什么意思呢? 原來是這樣,在早期版本的BASIC語言中,Dim是為了聲明數(shù)組的維數(shù)(Dimension),后期的BASIC語言中,由于兼容性原因,就沿用了最初的用詞。 ② Public/Private/Static可以作為修飾符,聲明Sub、Function、Property。這個(gè)在后續(xù)章節(jié)解釋。 ③ Dim常用在過程級,Public/Private常用在模塊級。 ④ 部分術(shù)語釋義: VBA = Visual Basic for Application BASIC = Beginner's All-purpose Symbolic Instruction Code 二、數(shù)據(jù)類型 VBA的數(shù)據(jù)類型 1.上述取值范圍,只需要記住Byte,Integer,String,Date的,然后知道Long的數(shù)量級(21億),其他的數(shù)據(jù)類型基本不需要關(guān)注,確實(shí)需要時(shí)再查表也可以。 在VBA的代碼編寫界面,按F1,搜索“數(shù)據(jù)類型”,可以得到上述信息。 實(shí)際上,VBA入門只需要常翻常看Office VBA的自帶幫助F1就足夠了,不需要購買任何專業(yè)書籍。 2.數(shù)據(jù)類型的內(nèi)存結(jié)構(gòu)和存儲方式,直接決定了他們的取值范圍。 例如,Byte占用1個(gè)字節(jié)=8位(8個(gè)二進(jìn)制位),能夠用于存儲的字符總數(shù)最多為2^8=256。所以,Byte的取值范圍是0-255。以后有時(shí)間,我們再掰扯其他的數(shù)據(jù)類型。 自己多用指針配合一些內(nèi)存查看工具多分析分析,會發(fā)現(xiàn)對計(jì)算機(jī)的理解會慢慢加深。 3.Decimal這個(gè)類型,不能用Dim dVar As Decimal得到 只能用Dim var As Variant var = CDec(325)得到該類型 4.部分?jǐn)?shù)據(jù)類型還有類型簡寫。 VBA類型簡寫助記口訣 三、常量 常量的前綴修飾符是Const(英文是Constant),常量可以是模塊級,也可以是過程級的。 常量一旦設(shè)定,理論上在程序運(yùn)行過程中都不能再修改(這也是常量存在的意義),并根據(jù)定義常量的作用域來調(diào)用。 四、變量 變量就像一個(gè)容器,可以放米也可以放水,可以放一升水、十升水,也可以啥都不放。 這里的米或者水,就是我們的變量類型;一升、十升、空,就是我們的變量的值。 五、示例 下面用一段簡單的例子代碼,來對本文做一個(gè)總結(jié)。 模塊1 模塊2 |
|