VBA-Code wird nicht ausgeführt, wenn die Zelle durch eine Formel geändert wird

Arbeitsblatt A hat Bereiche von Daten, die von gesammelt werdenArbeitsblatt B. Arbeitsblatt A hat ein Makro, das berechnet, ob die Daten über einem Wert liegen, und dann ein E-Mail-Modul aufruft, um ausgewählte Benutzer per E-Mail zu benachrichtigen.

Wenn die Daten manuell eingegeben werdenArbeitsblatt A Das Makro funktioniert jedoch, wenn Daten abgerufen werdenArbeitsblatt B es feuert nicht.

Ich bin nicht sicher, was ich an meinem VBA-Code ändern muss.

Private Sub Worksheet_Change(ByVal Target As Range)
    Call MailAlert(Target, "B5:M5", 4) 
    Call MailAlert(Target, "B8:M8", 7) 
    Call MailAlert(Target, "B11:M11", 6)
    Call MailAlert(Target, "B14:M14", 2) 
    Call MailAlert(Target, "B17:M17", 4) 
    Call MailAlert(Target, "B20:M20", 1) 
    Call MailAlert(Target, "B23:M23", 3) 
    Call MailAlert(Target, "B26:M26", 1) 
    Call MailAlert(Target, "B29:M29", 5) 
    Call MailAlert(Target, "B32:M32", 1) 
    Call MailAlert(Target, "B35:M35", 7) 
    Call MailAlert(Target, "B38:M38", 20) 
    Call MailAlert(Target, "B41:M41", 0) 
End Sub

Private Sub MailAlert(ByVal Target As Range, ByVal Address As String, ByVal Value As Integer)
    If Target.Cells.Count > 1 Then Exit Sub
    If Not Application.Intersect(Range(Address), Target) Is Nothing Then
        If IsNumeric(Target.Value) And Target.Value > Value Then
        Call Mail_small_Text_Outlook
        End If
        Application.EnableEvents = True
    End If
End Sub

Antworten auf die Frage(2)

Ihre Antwort auf die Frage