Dim strName
Dim intAge
Dim dblSalary
Dim blnIsActive
' 变量赋值
strName = "张三"
intAge = 30
dblSalary = 8000.50
blnIsActive = True
' 输出结果
MsgBox "姓名:" & strName & vbCrLf & "年龄:" & intAge & vbCrLf & "薪资:" & dblSalary
功能说明
演示VBA中不同类型变量的声明和赋值方法,包括字符串、整数、双精度浮点数、布尔值,最后通过MsgBox输出变量值。
代码解释
- Dim:声明变量的关键字
- MsgBox:弹出消息框显示内容
- vbCrLf:换行符,用于消息框换行
注意事项
1. VBA中无需指定变量类型,默认是Variant类型;
2. 变量名建议使用前缀标识类型(str/int/dbl/bln),提高可读性。
Dim fso, file, content
Set fso = CreateObject("Scripting.FileSystemObject")
' 打开文本文件
Set file = fso.OpenTextFile("C:\test.txt", 1, False)
' 读取全部内容
content = file.ReadAll
' 关闭文件
file.Close
' 输出内容
MsgBox "文件内容:" & vbCrLf & content
' 释放对象
Set file = Nothing
Set fso = Nothing
功能说明
使用VBA的FileSystemObject对象读取指定文本文件的全部内容,并通过消息框显示。
代码解释
- CreateObject:创建文件系统对象
- OpenTextFile:打开文本文件(参数1=文件路径,参数2=1表示只读,参数3=False表示文件不存在不创建)
- ReadAll:读取文件全部内容
- Close:关闭文件,释放资源
注意事项
1. 文件路径需使用绝对路径,且注意转义符(\);
2. 读取大文件时不建议用ReadAll,改用ReadLine逐行读取;
3. 操作完成后必须关闭文件并释放对象,避免文件被占用。
Dim wmi, items, item
Set wmi = GetObject("winmgmts:")
Set items = wmi.InstancesOf("Win32_OperatingSystem")
For Each item In items
MsgBox "系统版本:" & item.Caption & vbCrLf & _
"系统盘符:" & item.SystemDrive & vbCrLf & _
"启动时间:" & item.LastBootUpTime
Next
Set item = Nothing
Set items = Nothing
Set wmi = Nothing
功能说明
获取Windows系统版本、系统盘符、最后启动时间等信息。
代码解释
- GetObject("winmgmts:"):连接WMI服务
- Win32_OperatingSystem:操作系统信息类
- For Each:遍历WMI查询结果
- vbCrLf & _:换行并续行,提升代码可读性
注意事项
1. 需要管理员权限运行,否则可能获取不到完整信息;
2. LastBootUpTime返回的是WMI时间格式,如需转换为常规时间需额外处理;
3. 遍历完成后需释放WMI对象,避免内存占用。