VBS基礎篇 - 循環(huán)(for、Do、While)
經常地,當編寫代碼時,我們希望將一段代碼執(zhí)行若干次,我們可以在代碼中使用循環(huán)語句來完成這項工作。
循環(huán)可分為三類:一類在條件變?yōu)?False 之前重復執(zhí)行語句,一類在條件變?yōu)?True 之前重復執(zhí)行語句,另一類按照指定的次數(shù)重復執(zhí)行語句。
For...Next:指定循環(huán)次數(shù),使用計數(shù)器重復運行語句
Do...Loop:當條件為 true 或者直到條件為 true 時,運行循環(huán)
While…Wend:當條件為True時循環(huán)
For Each...Next:對于集合中的每項或數(shù)組中的每個元素,重復執(zhí)行一組語句
For...Next 語句
指定循環(huán)次數(shù),使用計數(shù)器重復運行語句,語法結構如下:
For counter = start To end [Step step] 'counter 用做循環(huán)計數(shù)器的數(shù)值變量, start:counter的初值, end:counter的終值, step:counter的步長 [statements] [Exit For] '退出循環(huán) [statements] Next
Dim Count:Count = 0 '定義一個變量,并賦值為0 For i = 1 To 10 '循環(huán)10次 ,F(xiàn)or 語句規(guī)定計數(shù)變量以及它的開始值和結束值 Count = Count + 1 Next 'Next 語句會以 1 作為步長來遞增變量i MsgBox Count '輸出10 ' 退出循環(huán):Exit For 語句用于在計數(shù)器達到其終止值之前退出 For...Next 語句。 Dim Count:Count = 0 '定義一個變量,并賦值為0 For i = 1 To 10 step 2 '循環(huán)10次,步長為2,通過使用 Step 關鍵詞,我們可以規(guī)定計數(shù)變量遞增或遞減的步進值 Count = Count + 1 If Count = 3 Then '當變量Count的值為3時,退出當前循環(huán) Exit For '退出循環(huán) End If Next MsgBox Count '輸出3
指定循環(huán)次數(shù),使用計數(shù)器重復運行語句,語法結構如下:
For counter = start To end [Step step] [statements] [Exit For] [statements] Next
主要參數(shù):
counter:用做循環(huán)計數(shù)器的數(shù)值變量。這個變量不能是數(shù)組元素或用戶自定義類型的元素。
start:counter的初值。
end:counter的終值。
step:counter的步長。如果沒有指定,則step的默認值為1。
具體示例代碼如下:
For…Next
Dim Count:Count = 0 '定義一個變量,并賦值為0 For i = 1 To 10 '循環(huán)10次 Count = Count + 1 Next MsgBox Count '輸出10
Step設置計數(shù)器循環(huán)步長
Dim Count:Count = 0 '定義一個變量,并賦值為0 For i = 1 To 10 Step 2 '設置計數(shù)器步長為2,循環(huán)5次 Count = Count + 1 Next MsgBox Count '輸出5
退出循環(huán)
Exit For 語句用于在計數(shù)器達到其終止值之前退出 For...Next 語句。因為通常只是在某些特殊情況下(例如在發(fā)生錯誤時)要退出循環(huán),所以可以在 If...Then...Else 語句的 True 語句塊中使用 Exit For 語句。如果條件為 False,循環(huán)將照常運行。
Dim Count:Count = 0 '定義一個變量,并賦值為0 For i = 1 To 10 '循環(huán)10次 Count = Count + 1 If Count = 5 Then '當變量Count的值為5時,退出當前循環(huán) Exit For End If Next MsgBox Count '輸出5
Do 循環(huán) 當(或直到)條件為True時循環(huán)
重復執(zhí)行語句直到條件變?yōu)門rue Dim Count:Count = 5 '定義一個變量 Do Until Count = 0 '直到Count變量為0時,否則一直循環(huán) MsgBox Count Count = Count -1 Loop MsgBox "循環(huán)結束" Dim Count:Count = 5 '定義一個變量 Do MsgBox Count Count = Count -1 Loop Until Count = 0 '直到Count變量為0時,否則一直循環(huán) MsgBox "循環(huán)結束" 當條件變?yōu)門rue之前重復執(zhí)行某語句塊 Dim Count:Count = 5 '定義一個變量 Do While Count <> 0 '當Count變量為0時,停止循環(huán) MsgBox Count Count = Count -1 Loop MsgBox "循環(huán)結束" Dim Count:Count = 5 '定義一個變量 Do MsgBox Count Count = Count -1 Loop While Count <> 0 '當Count變量為0時,停止循環(huán) MsgBox "循環(huán)結束" Exit Do 語句用于退出 Do...Loop 循環(huán) Dim Count:Count = 5 '定義一個變量 Do While Count <> 0 '當Count變量為0時,停止循環(huán) MsgBox Count Count = Count -1 If Count = 2 Then '判斷Count變量值是否為2,如果是則退出循環(huán) Exit Do End If Loop MsgBox "循環(huán)結束"
While…Wend 當條件為True時循環(huán)
Dim Count:Count = 5 '定義一個變量 While Count <> 0 '當Count變量值不等于0,一直循環(huán) MsgBox Count Count = Count -1 Wend MsgBox "循環(huán)結束" While…Wend 沒有Exit語句,從頭一直循環(huán)到尾,若要在中途退出,則需用Do…Loop語句
For Each...Next 語句
For Each...Next 不是將語句運行指定的次數(shù),而是對于數(shù)組中的每個元素或對象集合中的每一項重復一組語句。這在不知道集合中元素的數(shù)目時非常有用。
Dim Dics '定義一個變量 Set Dics = CreateObject("Scripting.Dictionary") '定義一個Dictionary對象 Dics.Add "0", "Athens" '為Dictionary對象賦值 Dics.Add "1", "Belgrade" Dics.Add "2", "Cairo" For Each Dic in Dics MsgBox Dics.Item(Dic) '循環(huán)遍歷,且輸出Dictionary鍵值 Next
上一篇:VBS基礎篇 - vbscript常用函數(shù)及功能
欄 目:vb
本文標題:VBS基礎篇 - 循環(huán)(for、Do、While)
本文地址:http://mengdiqiu.com.cn/a1/vb/7114.html
您可能感興趣的文章
- 01-10下載文件到本地運行的vbs
- 01-10VBS中的正則表達式的用法大全 <font color=red>原創(chuàng)&
- 01-10VBS中SendKeys的基本應用
- 01-10VBScript教程 第十一課深入VBScript
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript語法速查及實例說明
- 01-10VBS中Select CASE的其它用法
- 01-10VBScript教程 第七課使用條件語句
- 01-10vbscript 可以按引用傳遞參數(shù)嗎?
- 01-10VBScript教程 第二課在HTML頁面中添加VBscript代碼


閱讀排行
本欄相關
- 01-10下載文件到本地運行的vbs
- 01-10飄葉千夫指源代碼,又稱qq刷屏器
- 01-10SendKeys參考文檔
- 01-10什么是一個高效的軟件
- 01-10VBS中的正則表達式的用法大全 &l
- 01-10exe2swf 工具(Adodb.Stream版)
- 01-10VBS中SendKeys的基本應用
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript教程 第十一課深入VBScript
- 01-10VBScript語法速查及實例說明
隨機閱讀
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-11ajax實現(xiàn)頁面的局部加載
- 01-10delphi制作wav文件的方法
- 04-02jquery與jsp,用jquery
- 01-10C#中split用法實例總結
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10SublimeText編譯C開發(fā)環(huán)境設置