工控隨筆_20_西門子_WinCC的VBS指令碼_09_常量和流程控制_02
阿新 • • 發佈:2018-12-11
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、或者在頁面右下角點推薦喲!!!
--------------------------------------------------------------分割線---------------------------------------------------------------