為了控制Excel,學了些VBA,總結下語法,下文分為五部分:
一、代碼組織
二、常用數據類型
三、運算符
四、控制流
五、常用內置函數
一、代碼組織
1.能寫代碼的地方有{模塊,類模塊}。
2.代碼中可以寫的成員有{變量和常量,過程和函數}。對成員的訪問修飾符有{public,private}
3.寫注釋的方法有{以單引號開頭,以REM開頭}。
4.變量和常量聲明的格式如下
變量 |
Dim <variable> As <type> |
可以不聲明,直接賦值使用 |
常量 |
Const <cst> as <type> = <value> |
聲明時需立即跟等號賦值 |
5.變量賦值的格式是
變量名=變量值 |
對普通類型 |
Set 變量名=變量值 |
對object 類型 |
6.過程和函數書寫的格式是
過程 |
Sub 過程名() …… End Sub |
函數 |
Function 函數名(一堆變量) …… End Function |
7.VBA是大小寫不敏感的,即大寫小寫都被認為是小寫。
8.可以用Debug.Print在立即窗口,及時的打印輸出。
9.上面沒提到Excel事件,Excel對象模型。下文也沒有面向對象的內容,全是基礎語法的羅列。
二、常用數據類型
1 |
Integer |
整數 |
2 |
Double |
小數 |
3 |
String |
字符串 |
4 |
Array |
數組 |
5 |
Dictionary |
字典 |
6 |
Boolean |
布爾 |
7 |
Date |
日期 |
8 |
Object |
對象 |
VBA很直接的把Object當成一種類型,其中的Dictionary就屬於Object。
三、運算符
1.算數運算符
+ |
加 |
- |
減 |
* |
乘 |
/ |
除 |
% |
模 |
^ |
冪 |
2.比較運算符
= |
等於 |
<> |
不等於 |
> |
大於 |
< |
小於 |
>= |
大於等於 |
<= |
小於等於 |
3.邏輯運算符
And |
且 |
Or |
或 |
Not |
非 |
Xnot |
或非 |
4.連接運算符
+ |
連接 |
& |
連接 |
四、控制流
If……elseif……else分支 |
Switch分支 |
For循環 |
For each循環 |
While……Wend循環 |
Do While循環 |
……………… |
五、常用內置函數
1.特殊類
1 |
InputBox |
輸入框 |
2 |
MsgBox |
消息框 |
3 |
Rnd |
隨機數 |
4 |
Timer |
計時器 |
5 |
RGB |
RGB取色 |
2.數組
1 |
Lbound,Ubound |
下限,上限 |
3.字符串
1 |
Len |
返回長度 |
2 |
Join,Split |
拼接和分割 |
3 |
Left,Right,Mid |
取子串 |
4 |
InStr,InStrRev |
找子串位置 |
5 |
Trim,LTrim,RTrim |
去空格 |
6 |
Format |
格式化 |
7 |
Asc,Chr |
ASC轉換 |
8 |
LCase,UCase |
大小寫轉換 |
4.數字
1 |
IsNumeric |
類型確認 |
2 |
Round,Fix |
四舍五入 |
5.時間與日期
1 |
Date,Time,Now |
獲取系統時間 |
2 |
DateAdd,DateDiff |
日期加減 |
3 |
DatePart,Month,Day,Hour |
時間歸段 |