【发布时间】:2016-06-20 23:29:20
【问题描述】:
我可以就 vbYesNo MsgBox 的语法获得一些帮助吗? 我现在有这个,
For i = 1 To 10
If Not (cells(i,1).value = "0" OR cells(i,1).value = "30") Then
Range(cells(i, 1), cells(i, 1).End(xlToRight)).Select
ans = MsgBox("Do you want to delete this row?", vbYesNo)
If ans = vbYes Then
'I do something
Else
'I want to exit this the If and continue on the For loop
Exit If
End If
End If
Next i
我尝试了 End If 和 Exit If 但不起作用。我能得到一些帮助吗?
【问题讨论】:
-
您是否尝试过 Exit For 而不是 Exit If?
-
这将有助于查看您在哪里以及如何分配
ans......... -
为什么不直接做
End IF?您不必总是将Else与If语句放在一起。但请注意,您的循环将不会提示用户 10 次答案。他们被问过一次(在循环之前),基于此,循环要么做事,要么完全跳过。 -
哇哦,你的问题与vbYesNo/MsgBox 完全无关。我建议您将您的实际工作代码 交给Code Review... 看起来您在这里所做的事情效率极低。例如为什么
ans不是vbYes时还要循环一次? -
@Mat's Mug:对不起,如果我的标题不清楚。这是我所拥有的一个简单版本,我的循环中有一个嵌套的 If 条件,所以即使它的 vbNo 我仍然需要遍历整个循环。