Worksheet_Calculate在多个范围

我有当前的代码计算单个单元格的值,然后调用一个模块,如果它的值超过另一个值。

如何检查单元格的多个范围,例如B5:E5,B8:M8,如果范围内的任何一个单元超过了该值,则调用该模块。

Private Sub Worksheet_Calculate() If Range("B5") > 4 Then Application.EnableEvents = False Application.Run "Mail_small_Text_Outlook" Application.EnableEvents = True End If End Sub 

这是你正在尝试?

 Private Sub Worksheet_Calculate() Dim aRng As Range, bRng As Range Dim aCell As Range Set aRng = Range("B5:E5") Set bRng = Range("B8:M8") For Each aCell In aRng If aCell.Value > 4 Then ' Application.Run "Mail_small_Text_Outlook" ' Exit Sub End If Next For Each aCell In bRng If aCell.Value > 4 Then ' Application.Run "Mail_small_Text_Outlook" ' Exit Sub End If Next End Sub 

或者类似的东西?

 Private Sub Worksheet_Calculate() Dim aRng As Range, bRng As Range Dim aCell As Range, uRng As Range Set aRng = Range("B5:E5") Set bRng = Range("B8:M8") Set uRng = Union(aRng, bRng) For Each aCell In uRng If aCell.Value > 4 Then ' Application.Run "Mail_small_Text_Outlook" ' Exit Sub End If Next End Sub