1. 程式人生 > >工控隨筆_20_西門子_WinCC的VBS指令碼_09_常量和流程控制_02

工控隨筆_20_西門子_WinCC的VBS指令碼_09_常量和流程控制_02

  vbs不但提供了分支結構,還提供了豐富的迴圈形式。一共有3種迴圈:

  1、for迴圈

  2、do...loop迴圈

  3、while迴圈

  各種迴圈有各自的特點,在使用的時候可以進行轉換。

  前面已經描述過For迴圈,這裡簡單的描述一下後面兩種迴圈。

一、Do....loop迴圈

  

Option Explicit

'do loop 迴圈

'do loop迴圈有兩種形式
'1、形式1 while形式,  while true 就一直迴圈
'2、形式2 until形式,  until true 就停止迴圈

Dim bLoopAgain

'while形式的迴圈 '只要迴圈條件是true邏輯結果,就一直迴圈 Do Dim nInput bLoopAgain = False nInput= InputBox("請輸入數值:","while形式迴圈") If Not IsNumeric(nInput) Then bLoopAgain = True End If Loop While bLoopAgain 'until形式的迴圈 '只要迴圈條件為true,就結束迴圈 Do bLoopAgain = false nInput
= InputBox("請輸入數值: ","until形式迴圈") If IsNumeric(nInput) Then bLoopAgain = True End If Loop Until bLoopAgain '同時do迴圈的while關鍵字還可以放在最前面 '形成下面的格式 'do while 邏輯結果 '迴圈語句 'loop bLoopAgain = True Do While bLoopAgain nInput = InputBox("請輸入數值:","do while放在一起",""
) If IsNumeric(nInput) Then bLoopAgain = False End If Loop 'exit do迴圈語句 '有時候迴圈次數執行過多就跳出迴圈,比方說多次輸入的密碼錯誤就不在執行 Dim strCipher Dim nInputCount nInputCount = 0 Do bLoopAgain = True nInputCount = nInputCount + 1 strCipher = InputBox("請輸入密碼:") If strCipher = "volcanol" Then bLoopAgain = False End If '如果輸入密碼的次數超過5次,那麼就跳出迴圈 If nInputCount = 5 Then MsgBox "輸入密碼錯誤超過5次,禁止登陸!",vbInformation,"提示" Exit Do End If Loop While bLoopAgain

 

、while迴圈

'while... wend 迴圈
'vbs中還有一個比較簡潔的迴圈語句, while....wend
'這個迴圈當迴圈條件的邏輯結果為 true的時候一直迴圈
bLoopAgain = True 
While bLoopAgain 
    If "volcanol" = InputBox("請輸入密碼:","輸入") Then
        bLoopAgain = False
    End If
Wend 

 

三、Tips

1、集合和陣列遍歷可以使用For迴圈

2、do迴圈要注意while和until的位置,兩個需要注意

 

--------------------------------------------------------------分割線---------------------------------------------------------------

1、文章均為個人原創,歡迎轉載,轉載請保留出處:https://www.cnblogs.com/volcanol/

2、獲取工控PLC、變頻器、HMI、計算機、Windows、Linux、嵌入式資料點選:獲取資料

3、如果您覺得文章對您有幫助可轉至頁面上半部分打賞,或移步:打賞 

4、或者在頁面右下角點推薦喲!!!

--------------------------------------------------------------分割線---------------------------------------------------------------