VBA Message-Box mit zwei Bedingungen?
Hallo zusammen,
ich versuche eine Message-Box in Excel zu erzeugen, die beim Wechsel eines Worksheets bald fällige bzw. überfällige Termine anzeigt. Dabei stehen die Fälligkeiten in der Spalte K. Eine solche Meldung soll allerdings unterbleiben, sofern der Bearbeitungsstand auf "abgeschlossen" gesetzt wurde. Der Bearbeitungsstand wird in der Spalte N mittels Dropdown-Liste erfasst.
Mein Code sieht folgendermaßen aus:
Private Sub Worksheet_Activate()
Dim rDatTermin
Dim rDatStand
Dim sMsgBaldFaellig As String
Dim sMsgUeberFaellig As String
Dim sMsgAbgeschlossen As String
sMsgBaldFaellig = ""
sMsgUeberFaellig = ""
For Each rDatTermin In Range("K4:K500")
If rDatTermin.Value <> "" Then
If rDatTermin.Value < Date Then
sMsgUeberFaellig = sMsgUeberFaellig & Cells(rDatTermin.Row, 2) & vbCrLf
Else
If rDatTermin.Value <= Date + 14 Then _
sMsgBaldFaellig = sMsgBaldFaellig & Cells(rDatTermin.Row, 2) & vbCrLf
End If
End If
Next
For Each rDatStand In Range("N4:N500")
If rDatStand.Value <> "" Then
If rDatStand.Value = "abgeschlossen" Then _
sMsgAbgeschlossen = 1
End If
Next
If sMsgUeberFaellig & sMsgBaldFaellig <> "" & sMsgAbgeschlossen <> 1 Then
MsgBox "Überfällig" & vbCrLf & vbCrLf & sMsgUeberFaellig & "Bald fällig" & vbCrLf & sMsgBaldFaellig
End If
End Sub
Offensichtlich klappt hier die Verknüpfung zur zweiten Bedingung noch nicht. Die erste Bedingung wird geprüft und korrekt angezeigt. Der Bearbeitungsstand wird dabei jedoch nicht berücksichtigt. Wo habe ich da meinen Gedankenfehler?