我试图创建一个For循环,它只选择一些值,但不能算出语法,或者它是否可能?
我希望它像
Dim i As Integer
For i = 1,3,8,15 Then
Do something
Next i
任何想法?
答案 0 :(得分:5)
尝试
Sub Demo()
Dim indexArr As Variant
Dim i As Long
indexArr = Array(1, 3, 8, 15)
For i = LBound(indexArr) To UBound(indexArr)
Debug.Print indexArr(i)
Next i
End Sub
答案 1 :(得分:4)
你不能。
如果有模式,您可以使用Step
For i = 1 to 15 Step 2
哪个1,3,5,7,...
在这种情况下,由于没有模式,您需要添加If
或Select Case
:
Dim i As Integer
For i = 1 to 15 Then
Select Case i
Case 1,3,8,15
'Do Something
End Select
Next i
答案 2 :(得分:2)
您可以使用if语句:
Dim i As Integer
For i = 1 To 15 Then
If i = 1 or i = 3 or i = 8 or i = 15 Then
'Do something
End If
Next i
希望得到这个帮助。
答案 3 :(得分:0)
Dim number_list as collection
set number_list = new collection
number_list.add 1
number_list.add 3
number_list.add 8
number_list.add 15
for each number in number_list
'Do something with number
Next number
答案 4 :(得分:0)
您可以执行以下操作:
Dim i as Variant
Dim iArray as Variant
iArray=Array(1,3,8,15)
For Each i In iArray
'Do Something
Next i
欢呼