为了控制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 |
时间归段 |
