Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 跳过迭代列_Excel_Vba - Fatal编程技术网

Excel 跳过迭代列

Excel 跳过迭代列,excel,vba,Excel,Vba,我试图做的事情是,如果vinput(1,I)小于22,我希望代码转到下一个迭代列,如果大于22,则继续代码 问题在If-vinput(1,i)…行中。不确定我做错了什么: Sub CreateTestResultTableV2() Application.ScreenUpdating = False 'helps the code run faster Dim vInputs, vResults() Dim c As Integer, i As Integer 'create INPUT

我试图做的事情是,如果
vinput(1,I)
小于22,我希望代码转到下一个迭代列,如果大于22,则继续代码

问题在
If-vinput(1,i)…
行中。不确定我做错了什么:

Sub CreateTestResultTableV2()

Application.ScreenUpdating = False 'helps the code run faster


Dim vInputs, vResults()
Dim c As Integer, i As Integer

'create INPUTS array
c = Range("b5").End(xlToRight).Column
vInputs = Range("b5", Cells(8, c))
    'determine last value in the column
    c = UBound(vInputs, 2)

'create RESULTS array
ReDim vResults(1 To 3, 1 To c)

For i = 1 To c

    If vInputs(1, i) <= 22 Then GoTo Next i
    Else
        'set values
        Range("j16") = vInputs(1, i)
        Range("n12") = vInputs(4, i)

            'copy output values into RESULTS array
            vResults(1, i) = Range("h41")
            vResults(2, i) = Range("k41")
            vResults(3, i) = Range("z14")

Next i

Range("e47").Resize(3, c) = vResults

Application.ScreenUpdating = True

End Sub
Sub-CreateTestResultTableV2()
Application.ScreenUpdate=False“帮助代码运行更快
Dim vInputs,vResults()
Dim c作为整数,i作为整数
'创建输入数组
c=范围(“b5”)。结束(xlToRight)。列
vInputs=范围(“b5”,单元(8,c))
'确定列中的最后一个值
c=UBound(输入,2)
'创建结果数组
ReDim vResults(1到3,1到c)
对于i=1到c

如果vinput(1,i)不使用
Goto
语句跳过循环中的迭代。使用相反的运算符,仅在条件为
True
时执行循环中的代码

For i = 1 To c

    If vInputs(1, i) > 22 Then 
        'set values
        Range("j16") = vInputs(1, i)
        Range("n12") = vInputs(4, i)

        'copy output values into RESULTS array
        vResults(1, i) = Range("h41")
        vResults(2, i) = Range("k41")
        vResults(3, i) = Range("z14")
    End if

Next i

不要使用
Goto
语句跳过循环中的迭代。使用相反的运算符,仅在条件为
True
时执行循环中的代码

For i = 1 To c

    If vInputs(1, i) > 22 Then 
        'set values
        Range("j16") = vInputs(1, i)
        Range("n12") = vInputs(4, i)

        'copy output values into RESULTS array
        vResults(1, i) = Range("h41")
        vResults(2, i) = Range("k41")
        vResults(3, i) = Range("z14")
    End if

Next i

您不能
然后转到下一个i
下一个i不是标签。您不能使用带有内联If的Else。您不能
然后转到下一个i
下一个i不是标签。不能将Else与内联If一起使用。