【发布时间】:2019-01-05 20:05:10
【问题描述】:
我有一个 for 循环,里面有 if 语句。
在我的 Excel 中,我有一个包含每个值一次的列表。一旦我发现它,我什至不希望代码检查条件,我希望它在每次执行循环时完全跳过这部分 if 语句,这可能吗?
循环的第一次迭代会发现“c”是值,所以它会在里面做些什么(xc = i)
我什至不希望代码再次检查“ElseIf Cells(1, i) = "c",如下图,这可能吗?
编码为文本:
Sub test()
Dim i, xa, xb, xc As Integer
For i = 1 To 5
If Cells(i, 1) = "a" Then
xa = i
ElseIf Cells(i, 1) = "b" Then
xb = i
ElseIf Cells(i, 1) = "c" Then
xc = i
End If
Next i
End Sub
【问题讨论】:
-
请将代码提供为文本,而不是图像。
-
如果您的列表只包含唯一值,这有什么关系?
-
@TimWilliams 效率和时间。我有 60 个 ElseIf
-
@trincot - 我编辑了原始帖子,在那里检查代码作为文本
-
如果您想提高效率,请在进入 If 块之前将单元格值读入变量
标签: excel vba for-loop if-statement