常用
Private Sub Form_Load()
End
End Sub
字符串
在字符串中写字符串两个双引号代表一个双引号,和 python 代码比较
python 代码
demo = \'0.00"g"\'
vba 代码
demo = "0.00""g"""
判断
If [A1] >= 0 Then
[A1] = 1
ElseIf <= 0 Then
[A1] = 2
Else
[A1] = 3
End If
符号
循环
For i = 1 To 100
Next
while Timer < Timer + 5
wend
While (Timer < Timer + 5)
Wend
数据类型
变量
Dim 变量名 As 数据类型
数值型数据
| 数值型 |
作用 |
| Integer |
整型 |
| Long |
长整型 |
| Single |
单精度浮点型 |
| Double |
双精度浮点型 |
| Currency |
货币型 |
| Byte |
字节型 |
数据类型转换
| 语法 |
返回值 |
作用 |
| str(233) |
str |
将数字转换成字符串 |
| val(\'233\') |
double |
将字符串转换成数字 |
| chr(233) |
|
转换 ascii 码字符串 |
数据类型强制转换
| 语法 |
返回值 |
作用 |
| CBool |
Boolean |
强制转换为布尔类型 |
| CByte |
Byte |
强制转换为字节类型 |
| CCur |
Currency |
强制转换为货币类型 |
| CDate |
Data |
强制转换为日期类型 |
| CSng |
Single |
强制转换为单精度浮点数 |
| CDec |
Decimal |
科学计数转十进制 |
| CDbl |
Double |
制转换为双精度浮点数 |
| CInt |
Int |
强制转换为整形 |
| CLng |
Long |
强制转换为长整形 |
| cstr(整数) |
String |
强制转换为字符串 |
输出数据类型
MsgBox TypeName(变量)
函数
Sub 函数名()
End Sub
调用函数
函数名()
延时
| 语法 |
作用 |
| Timer |
今日 0点到现在的秒数 |
| Private Declare Sub Sleep Lib "kernel32.DLL" (ByVal dwMilliseconds As Long) |
声明 sleep |
| DoEvents |
将控制权传给操作系统 |
| Sleep 1000 |
延时一秒 |
Private Declare Sub Sleep Lib "kernel32.DLL" (ByVal dwMilliseconds As Long)
Private Sub Form_Load()
T1 = Timer
Do While (Timer - T1 < 5)
DoEvents
Sleep 100
Loop
End Sub
txt
末尾追加到下一行
Private Sub CommandButton3_Click()
Open "c:\aaa.txt" For Append As #1
Print #1, "demo"
Close #1
End Sub
清空写入
Private Sub Form_Load()
age_ = "520"
name_ = "tangle"
json = "{""name"": " + name_ + ", ""age"": " + age_ + "}"
Open "dict.txt" For Output As #1
Print #1, json
Close #1
End Sub
读取
每次读取一行可叠加
Private Sub CommandButton3_Click()
Dim a, b, c
Open "c:\aaa.txt" For Input As #1
Line Input #1, a
Line Input #1, b
Line Input #1, c
Close #1
msgbox c
End Subvb
config
写字符串
| 语法 |
作用 |
| lng = WritePrivateProfileString("字典", "键", "值", "./config.ini") |
写字符串 |
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Private Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long
Private Sub Form_Load()
Dim lng
lng = WritePrivateProfileString("config", "para", "233", "./config.ini")
End Sub
读字符串
| 语法 |
作用 |
| lng = GetPrivateProfileString("字典", "键", "", retstr, 256, "./config.ini") |
读字符串 |
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Private Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long
Private Sub Form_Load()
Dim lng As Long
Dim retstr As String
retstr = String(260, 0)
lng = GetPrivateProfileString("config", "para", "", retstr, 256, "./config.ini")
retstr = Replace(retstr, Chr(0), "")
MsgBox lng \' 字符串长度
MsgBox retstr \' 返回字符串
End Sub
读整数
| 语法 |
作用 |
| lng = GetPrivateProfileInt("字典", "键", 0, "./config.ini") |
读整数 |
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Private Declare Function GetPrivateProfileInt Lib "kernel32" Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal nDefault As Long, ByVal lpFileName As String) As Long
Private Sub Form_Load()
lng = GetPrivateProfileInt("config", "para", 0, "./config.ini")
End Sub