excel的宏與VBA入門(三)——流程控制


一、條件控制IF

if  邏輯表達式 then 語句塊 end if

  帶else的if語句:

 If  邏輯表達式1 Then 語句塊1 ElseIf  邏輯表達式2  Then 語句塊2 ElseIf 邏輯表達式3 Then 語句塊3 … Else 語句塊n End If

二、條件判斷Select/Case

Select Case 測試表達式    Case 條件表達式1    語句塊1    Case 條件表達式2    語句塊2   Case 條件表達式3    語句塊3    ......    Case 條件表達式n    語句塊n    Case Else    語句塊Else End Select.

  示例:

Sub test()   If [a1].Value = "" Then       MsgBox "A1單元格沒有輸入數字。"       Exit Sub '     退出程序
  End If   Select Case [a1].Value       Case 0 To 29           MsgBox ""       Case 30 To 59           MsgBox "不及格"       Case 60 To 79           MsgBox "及格"       Case 80 To 89           MsgBox "良好"       Case Else           MsgBox "優秀"   End Select
End Sub

三、循環控制For/Next

 For 循環變量=初值 to 終值 step 步長 循環體1 [exit for] 循環體2 next 循環變量   

  示例:(步長默認為1,next后的循環變量可以省略 )

Sub mysum()   Dim Lsum As Long, i As Long
  For i = 1 To 1000       Lsum = Lsum + i   Next
  MsgBox "1到1000的自然數和為:" & Lsum End Sub

  //更多實例,參考開篇鏈接

四、循環控制For/Each

For Eacn 元素變量 In 對象集合或數組名稱 語句塊1 [Exit For] 語句塊2 next 元素變量

  //與上一個循環類似,這里采用元素變量從對象集合中取得方式

五、循環控制Do/While

 Do Wihle 循環條件 語句塊1 [Exit Do] 語句塊2 Loop

  Do 語句塊1 [Exit Do] 語句塊2 Loop Wihle 循環條件

  //示例暫略

六、循環控制Do/Until

Do Until 循環條件 語句塊1 [Exit Do] 語句塊2 Loop
   

 Do 語句塊1 [Exit Do] 語句塊2 Loop Until 循環條件

  //與Do/While相反的是為真時退出

七、循環控制GoTo

Sub mysum() Dim Lsum As Long, i As Long i = 1 x: '為go to 語句設置的標簽,必須以英文狀態下的冒號結尾
   Lsum = Lsum + i    i = i + 1
If i <= 1000 Then GoTo x '如果i<=1000,則程序跳到標簽X處
MsgBox "1到1000的自然數和為:" & Lsum End Sub

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM