vba 数据类型 if判断

1.数据类型

'-------------------------------------------------------------------
'1.VBA中的常见数据类型:
                    '  类型          注释        简写    占用内存
                    '   Integer      整型         %     2Byte
                    '   Single        单精度      !       4Byte
                    '   Double      双精度      #      8Byte
                    '   Long         长整型      &      4Byte
                    '   String        字符型      $      定长或变长( 变长字符串最多可包含大约 20 亿 ( 2^31)个字符。 定长字符串可包含 1 到大约 64K ( 2^16 ) 个字符。)
                    '   Currency   货币型      @     8Byte
'--------------------------------------------------------------------
Sub 数据类型()
Dim a As Integer
Dim b%
End Sub

Sub 多数据类型声明()
Dim a As Integer, b As Single, c As String
Dim d%, e!, f$
End Sub



这只是VB中一个String的的不同用法在内存中的表示。VB中字符串可以是“定长”和“不定长”二种。“定长”是Dim s As String * 40 (比如,那么就是10+40=50),字符串长度不可变化。

“变长”直接就是:Dim s As String。串的长度直接是字符的个数(最多可以定义达到2G个字符的长度),且在这个范围之内,字符串长度可以随时发生变化。

2.if判断

'VBA中的IF条件判断语句,就像函数中的IF一样
'IF可单条件,也可多条件。

Sub IF条件判断之单条件1()
Dim a%, b%
a = 2
b = 2
If a = b Then MsgBox "相等"
End Sub

Sub IF条件判断之单条件2()
Dim a%, b%
a = 2
b = 2
    If a = b Then
        MsgBox "相等"
    End If
End Sub

Sub IF条件判断之单条件3()
Dim a%, b%
a = 2
b = 2
    If a = b Then
        MsgBox "相等"
    Else
        MsgBox "不相等"
    End If
End Sub

Sub IF条件判断之多条件等级划分()
    If Sheet1.Range("b1") >= 90 Then
        Sheet1.Range("b2") = "优秀"
    ElseIf Sheet1.Range("b1") >= 80 Then
        Sheet1.Range("b2") = "良好"
    ElseIf Sheet1.Range("b1") >= 70 Then
        Sheet1.Range("b2") = "中等"
    Else
        Sheet1.Range("b2") = "较差"
    End If
End Sub


'VBA中的IIF函数与工作表函数(IF)的语法结一致
Sub IIF函数应用()
Cells(2, 3) = IIf(Cells(1, 2) > 80, "优秀", "不优秀")
End Sub



'
'            1.单行形式1If...Then)
'            If 条件判断 Then 条件成立结果
'             注意 在单行形式中,按照 If...Then 判断的结果也可以执行多条语句。
'             所有语句必须在同一行上并且以冒号分开。
'            例子:

Sub test()
If 1 > 10 Then a = a + 1: b = 1 + a: c = 1 + b
End Sub
'            2. 单行形式1If 条件判断 Then 条件成立 Else 条件不成立)
'           例子:
Sub test2()
If 1 > 1 Then MsgBox "yes" Else MsgBox "no"
End Sub
'
'            3.块形式(If...ThenEnd)
'            If 条件判断 Then
'            条件成立结果
'            End If
'       例子:
Sub test3()
If 11 > 10 Then
a = 1 + a
b = 1 + a
c = 1 + b
End If
End Sub

'
'
'            4.块形式的If嵌套

'            If 条件判断 Then

'            成立时的结果

'            ElseIf 条件判断 Then

'            成立时的结果

'            ……

'            Else

'            不成立时的结果

'            End If
'       例子:
'            Sub 等级判断()
'                If Sheet1.Range("b1") >= 90 Then
'                    Sheet1.Range("b2") = "优"
'                ElseIf Sheet1.Range("b1") >= 80 Then
'                    Sheet1.Range("b2") = "良"
'                ElseIf Sheet1.Range("b1") >= 70 Then
'                    Sheet1.Range("b2") = "中"
'                Else
'                    Sheet1.Range("b2") = "差"
'                End If
'            End Sub
'
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值