VBA語法(2)

一、判斷語句

1. iF判斷

//單條件判斷
Sub 判斷1()
    If Range("a1").Value > 0 Then
       Range("b1") = "A1的值是正數"
    Else
       Range("b1") = "A1的值是負數或者零"
    End If
End Sub


//多條件判斷
Sub 判斷2()
    If Range("a1").Value > 0 Then
       Range("b1") = "A1的值是正數"
     ElseIf Range("a1").Value = 0 Then
       Range("b1") = "A1的值是零"
     Else
       Range("b1") = "A1的值是負數"
      End If
End Sub

//多條件判斷	
Sub 多條件判斷2()
    If Range("a1") <> "" And Range("a2") <> "" Then
        Range("a3") = Range("a1") * Range("a2")
    End If
End Sub




tip :單元格的多條件判斷不同

2.select 判斷

//單條件判斷
Sub select條件判斷()
    Select Case Range("a1").Value
    Case Is > 0
        Range("b1") = "a1是正數"
    Case Else
        Range("b1") = "a2是負數或者0"
    End Select
End Sub

//多條件判斷
Sub select多條件判斷()
    Select Case Range("a1").Value
    Case Is > 0
        Range("b1") = "a1是正數"
    Case Is = 0
        Range("b1") = "a1是0"
    Case Else
        Range("b1") = "a1是負數"
    End Select
End Sub

3.IIF判斷

Sub IFF條件判斷()
    Range("a3") = IIf(Range("a1") <= 0, "負數或者0", "正數")
End Sub

4.區間判斷

Sub IF區間條件判斷()
    If Range("a1") < 1000 Then
        Range("b1") = 1
     ElseIf Range("a1") < 2000 Then
        Range("b1") = 2
     ElseIf Range("a1") >= 2000 Then
        Range("b1") = 3
    End IF  
End Sub

Sub Select區間條件判斷()
   Select Case Range("a1").Value
    Case 0 To 1000
        Range("a2") = 1
          Case 1001 To 2000
        Range("a2") = 2
          Case Is > 2000
        Range("a2") = 3
     End Select
    
End Sub

二、循環語句

1.for循環

Sub for循環語句()

    Dim x As Integer
    For x = 2 To 6
        Range("d" & x) = Range("b" & x) * Range("c" & x)
    Next x
End Sub




2.for Each 循環

Sub forEach循環語句()
    Dim rg As Range
    For Each rg In Range("d2:d5")
    //offset(x,y) 當y爲正數時表示當前對象右邊第Y個單元,爲負數則反之
        rg = rg.Offset(0, -1) * rg.Offset(0, 1)  
    Next rg
End Sub

3.do循環

使用 exit do 可以跳出一次循環


Sub do循環語句()
    Dim x As Integer
    x = 1
    Do
    x = x + 1
    Cells(x, 4) = Cells(x, 2)
    Loop Until x = 10
End Sub

Sub dowhile循環語句()
 Dim x As Integer
    x = 1
    Do While x < 10
    x = x + 1
    Cells(x, 4) = Cells(x, 2)
    Loop
End Sub

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章