前言
本来我想可能不会接触到这个语言, 不过在用excel时需要用到VBA. 这就不得不专门去学习一番.
入了个门, 专门写个文档留着. 万一以后用得到呢…
论VB, 我还是初学者. 如有弄错了的地方. 你倒是来打我呀~
学习和阅读这篇文章, 需要你有其他编程经验. 我不会长篇大论的和你解释什么是”变量”什么是”循环”
VB/VBA/VBS 的区别
VB是一门编程语言, 开发软件的. 容易上手, 但不适合开发复杂的软件. 现在快安享晚年了吧~
VBS使用的是VB的语法结构, 全称”VBScript”是一个脚本语言, 嵌入到网页中使用的(也有其他领域)
VBA的全称是”VBApplication”, 是嵌入在一些特殊软件中的. 比如Excel. 方便大家发挥骚操作
数据类型
类型 | 中文名称 | 大小 | 说明 |
---|---|---|---|
Boolean | 布尔型 | 2字节 | true和false |
Byte | 字节型 | 1字节 | 0~255 |
Integer | 整数型 | 2字节 | -32768~32767 |
Long | 长整数 | 4字节 | -2147483648~2147483647 |
Single | 单精度浮点 | 4字节 | -3.402823E38~-1.401298E-45(负数) 1.401298E-45~3.402823E38(正数) |
Double | 双精度浮点 | 8字节 | -1.79769313486231E308~-4.94065645841247E-324(负数) 4.94065645841247E-324~1.79769313486232E308(正数) |
Currency | 货币型 | 8字节 | -922337203685477.5808~922337203685477.5807 |
Decimal | 小数型 | 14字节 | ±79228162514264337593543950335(没有小数点时) ±7.9228162514264337593543950335(小数点右边带28位) 最小的非零值为±0.0000000000000000000000000001 |
Date | 日期类型 | 8字节 | 100年1月1日~9999年12月31日 |
Object | 对象类型 | 4字节 | 任何对象的引用 |
String | 字符串(变长) | 10字节+字符串长度 | 0~约2亿个字符 |
String | 字符串(定长) | 字符串长度 | 1~约65400个字符 |
Variant(数字) | 16字节 | 任何数字值,最大可达Double的范围 | |
Variant(字符) | 22字节+字符串长度 | 与可变长字符串有相同的范围 | |
用户定义型 | 元素必需的数字 | 每个元素的范围与字本身数据类型的范围相同 |
语言风格介绍
快速的了解一下这个语言的风格
Sub 功能模块() If 1=1 Then MsgBox "对的" Else MsgBox "错的" End If End Sub
不是类C语言的风格, 一切都是语句在控制. 没有方括号, 没有”;”结尾, 没有语法糖 只能依靠缩进和换行来看懂.
注释
'我是单行注释, 注意前面是一个单引号
常量
[Public | private]Const 常量名[As 数据类型]=表达式
Const 文本 As String = "得罪了方丈还想走?!"
常量设定后, 不允许修改值
变量
声明变量的方法是”Dim 变量名称 As 数据类型”
Dim Names As String Dim Age1,Age2 As Integer = 45 '声明多个变量并且赋值
SUB模块
[Private | Public] Sub 模块名称() ... [Exit Sub] //退出模块 End Sub
调用模块
假如我们有一个”关闭”模块, 调用它就需要用到”Call”语句
Sub 关闭() ... End Sub Call 关闭()
运算符
不可以忽略哦, VB的许多运算符和其他编程语言不太一样
运算符 | 作用 | 举例 | 其他说明 |
---|---|---|---|
= | 等于 | If 1 = 1 Then … | |
<> | 不等于 | 1 <> 2 | |
> | 大于 | 2 > 1 | |
>= | 大于等于 | ||
< | 小于 | ||
<= | 小于等于 | ||
+ | 相加 | i=n+100 | |
- | 相减 | i=n-50 | |
* | 相乘 | i=500 * 60 | |
/ | 除法 | i=36 / 3 | |
& | 字符串连接 | str = “你好” & “我是剑齿虎” | “&”是强制性连接,就是不管什么都连接。 VBA里用到的… 不知道通用不 |
+ | 字符串连接 | str=”CHI” + “NA” | “+”是对字符串进行连接,对数字则进行加法运算。 (用“+”号的时候,“+”前后类型要一致) |
Or | 或者 | If 1=1 Or 1=2 Then … | |
And | 并且 | If 1=1 And 2=2 Then … |
欢迎补充
IF判断
简写的If
If 条件 Then ... [End If]
支持Else和ElseIf
If <条件1> Then ... ElseIf <条件2> ... Else ... End If
Select多项选择 (就是switch)
Select Case <值> Case 1 ... Case 2 ... End Select
循环
For循环
来一个栗子吧, 初始化i为1. 循环100次
For i = 1 To 100 ... [Exit For] Next
遍历集合/遍历数组 (For Each)
请注意, foreach不能使用 End ForEach哦~
For Each cell In 集合 MsgBox cell.name Next cell
判断循环
语法格式 : do While … Loop
do while <条件> ... Loop
循环判断
语法格式 : do … Loop Until <条件>
Do ... Loop Until <条件>
恭喜您, 你已经入门了VB. 并解锁了以下技能
- 语法结构
- 注释
- 常量
- 变量
- 模块/函数
- 判断语句
- 循环语句
来源:https://www.cnblogs.com/edk24/p/9582233.html