对于每个循环但在消息框中没有循环
Posted
技术标签:
【中文标题】对于每个循环但在消息框中没有循环【英文标题】:For each Loop but Without Looping in Message Box 【发布时间】:2019-06-02 22:51:10 【问题描述】:下面的代码简单地说明,对于我的范围,如果它包含 1(或 100%)或更大的值,则以红色突出显示。
但我想知道响应(如果满足条件)一个消息框而不必经过下一个过程,它将弹出消息框的次数与红色单元格一样多(有多少单元格满足条件x >= 1)
有没有办法做到这一点,如果满足条件,只弹出一个消息框;如果条件不满足,会弹出另一个消息框,比如 MsgBox("good to process")
我尝试循环显示消息框,但似乎不起作用
Sub myCode()
Dim iRow As Range, cell As Range
Set iRow = Range("J16:M43")
For Each cell In iRow
If cell.Value >= 1 Then 'message box here will repeat
cell.Interior.Color = 255
End If
Next
End Sub
【问题讨论】:
MsgBox 什么时候出现,消息应该是什么? 【参考方案1】:基本上,如果满足条件,您需要设置一个变量来“记住”。
Sub myCode()
Dim iRow As Range, cell As Range, conditionMet as Boolean
conditionMet=False
Set iRow = Range("J16:M43")
For Each cell In iRow
If cell.Value >= 1 Then
cell.Interior.Color = 255
conditionMet = True
End If
Next
If conditionMet Then
'Message for condition met
Else
'Message for condition not met
End if
End Sub
【讨论】:
一旦条件满足,使用Exit For
。继续循环没有意义
是的,但如果您仍然希望突出显示所有单元格,那将无法正常工作。
谢谢你们!我希望在我的案例中突出显示所有单元格以上是关于对于每个循环但在消息框中没有循环的主要内容,如果未能解决你的问题,请参考以下文章