Hallo! Du könntest als Ereignis in Blatt einbauen. Immer wenn du dann das Blatt aktivierst, kommt die Meldung. Dabei werden dir gleich alle angezeigt.
Könnte so aussehen (schnelle programmiert, könnte man noch anpassen). Einfach bei dem entsprechenden Blatt einfügen (bei dir wohl Planung). Vg
Private Sub Worksheet_Activate()
Dim nachricht1 As String
Dim nachricht2 As String
Dim spalte As Long
Dim abgelaufen As Long
Dim läuftab As Long
With Worksheets("Planung")
nachricht1 = ""
abgelaufen = Application.WorksheetFunction.CountIf(.Range("D7:T7"), "<" & 0)
If abgelaufen > 0 Then
nachricht1 = "Der Führerschein von "
For spalte = 3 To 20
If .Cells(7, spalte) < 0 Then
nachricht1 = nachricht1 & vbCrLf & .Cells(3, spalte).Value & " ist seit " & .Cells(7, spalte).Value * -1
End If
Next
nachricht1 = nachricht1 & vbCrLf & "Tagen abgelaufen."
MsgBox nachricht1, vbInformation, "Führerscheinkontrolle"
End If
nachricht2 = ""
läuftab = Application.WorksheetFunction.CountIf(.Range("D7:T7"), "<" & 100)
If läuftab > 0 And läuftab > abgelaufen Then
nachricht2 = "Der Führerschein von "
For spalte = 3 To 20
If .Cells(7, spalte) > 0 And .Cells(7, spalte) < 100 Then
nachricht2 = nachricht2 & vbCrLf & .Cells(3, spalte).Value & " läuft in " & .Cells(7, spalte).Value
End If
Next
nachricht2 = nachricht2 & vbCrLf & "Tagen ab."
MsgBox nachricht2, vbInformation, "Führerscheinkontrolle"
End If
End With
End Sub
|