Microsoft Excel

Herbers Excel/VBA-Archiv

Pop-Up bei Datumsüberschreitung

Betrifft: Pop-Up bei Datumsüberschreitung von: Stefan
Geschrieben am: 13.08.2020 14:01:36

Hallo liebe Forum-Gemeinde,

ich habe ein kleineres Problem bei der Excel-VBA Programmierung - da ich nicht gerade der Profi in VBA bin.


Folgendes Problem liegt vor:

In Spalte F wird fortlaufend das aktuelle Datum für neue Produkte eingetragen (F2:F9999). Nun soll nach 14-Tagen überschreiten ab Eintragungsdatum bei öffnen von Excel automatisch eine MsgBox erscheinen, die ausgibt welches Produkt überfällig ist. Ich habe im Forum schon ein wenig geschaut allerdings hapert es bei mir zum einen daran das Excel mir nicht die Auswahl für die komplette Spalte F gestattet und zum anderen die Ausgabe des Produkts aus der jeweiligen Zeile. Vielleicht keiner von den Profis ja helfen.



Private Sub Workbook_Open()

   If Date > Worksheets("List1").Range("F2:F9999").Value + 14 Then
   MsgBox "Enddatum überschritten"
   End If

End Sub




Vielen Dank für eure Hilfe.


Freundliche Grüße,

Stefan

Betrifft: AW: Pop-Up bei Datumsüberschreitung
von: Rudi Maintaire
Geschrieben am: 13.08.2020 14:07:06

Hallo,
du musst in einer Schleife jede Zelle prüfen.
z.B.
Private Sub Workbook_Open()
  Dim i As Long
  For i = 2 To Cells(Rows.Count, 6).End(xlUp).Row
    If Cells(i, 6) <> "" Then
      If Date > Cells(i, 6) + 14 Then
        MsgBox "Enddatum überschritten" & vbLf & Cells(i, 1)
      End If
    End If
  Next i
End Sub

Gruß
Rudi

Betrifft: AW: Pop-Up bei Datumsüberschreitung
von: Stefan
Geschrieben am: 13.08.2020 15:08:54

Hallo Rudi,
wow das ging super schnell :) Vielen Dank für deine Hilfe genau das was ich brauchte!!

Gruß,
Stefan

Betrifft: AW: Pop-Up bei Datumsüberschreitung
von: Sigi
Geschrieben am: 13.08.2020 14:09:16

Hallo Stefan,

so einfach geht das nicht. Du brauchst eine Schleife von F2 bis F9999, die jede(!) Zelle überprüft!
Einfacher wäre eine bedingte Formatierung (=HEUTE() > A2+14).

Sigi