VB快速上手文档教程
阅读原文时间:2023年09月07日阅读:1

前言

本来我想可能不会接触到这个语言, 不过在用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

循环

来一个栗子吧, 初始化i为1. 循环100次

For i = 1 To 100
    ...
    [Exit For]
Next

请注意, 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. 并解锁了以下技能

  • 语法结构
  • 注释
  • 常量
  • 变量
  • 模块/函数
  • 判断语句
  • 循环语句