Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hilfe zu folgendem Makro .....

Forumthread: Hilfe zu folgendem Makro .....

Hilfe zu folgendem Makro .....
19.05.2002 12:26:53
Klaus W.
Hallo zusammen,

ich benötige Hilfe zu nachfolgendem Makro, das ich mir heruntergeladen habe:

1. Normalerweise sollte das Makro starten, wenn die Arbeitsmappe geöffnet wird. Tut es aber nicht.

2. Ist es möglich, dass mir nicht nur angezeigt wird, wer heute Geburtstag hat sondern in den nächsten 7 oder auch 14 Tagen.

3. Ich bekomme das nicht hin, dass nur die 1. Tabelle meiner Mappe durchsucht wird. Nachdem das Makro beendet wurde, ist immer meine letzte Tabelle aktiv.

Es wäre sehr nett, wenn mir jemand helfen könnte.

'Hauptmakro
Sub Geburtstag()
'Variablendeklaration
Dim z0%, z!, z1!


z0 = 6 'Erste Zeile mit Nachnamen

'Auf jedem Blatt suchen
For Each Blatt In ActiveWorkbook.Sheets
'Soll nur auf den beiden Blättern gesucht werden, Hochkomma entfernen.
If Blatt.Name = "Gesamtliste" Then
z = z0
z1 = z
End If

'Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
'Blatt auswählen
Blatt.Select
'Solange auf dem Blatt suchen, wie in Spalte 5 was steht
Do While Cells(z, 5).Value <> ""
'Meldung in Statusleiste
Application.StatusBar = "Überprüft wird: " & Cells(z, 6).Value
'Bei Fehler weitere Schritte überspringen
On Error Resume Next
'Wenn Tag und Monat der Zelle in Spalte 6 = Heute sind
If Day(Cells(z, 6).Value) = Day(Date) And Month(Cells(z, 6).Value) = Month(Date) Then
'Cells(z, 6).Select 'Hochkomma entfernen, wenn Meldung gezeigt werden soll
'Überprüfen, ob Name nochmal vorhanden
For i = z1 To z - 1
'Wenn ja, weitersuchen
If Cells(i, 5).Value = Cells(z, 5).Value And Cells(i, 4).Value = Cells(z, 4).Value Then
GoTo nächste
End If
Next
'Hochkomma entfernen, wenn Meldung gezeigt werden soll:
' MsgBox Cells(z, 3).Value & " " & Cells(z, 4).Value & " " & Cells(z, 5).Value & " wird heute " & Year(Date) - Year(Cells(i, 6).Value) & Cells(z, 10).Value
'Daten der Listbox hinzufügen
Beep
'Geburtstagskind in Listbox eintragen
UserForm1.ListBox1.AddItem (Cells(z, 3).Value & " " & Cells(z, 4).Value & " " & Cells(z, 5).Value & " wird heute " & Year(Date) - Year(Cells(i, 6).Value) & Cells(z, 10).Value)
'Wegen der besseren Übersichtlichkeit eine Leerzeile in Listbox einfügen
UserForm1.ListBox1.AddItem ("-------------------------")
End If
nächste:
z = z + 1
Loop
'Soll nur auf den beiden Blättern gesucht werden, Hochkomma entfernen.
'End If
'Nächstes Blatt
Next
'Bildschirmaktualisierung einschalten
Application.ScreenUpdating = True
'Statusleiste zurücksetzen
Application.StatusBar = False
UserForm1.Caption = "Heutige Geburtstage:"
UserForm1.Show
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Hilfe zu folgendem Makro .....
19.05.2002 13:12:24
BerndL
Zu 1.
Unter Office97 klappt's wenn man das Makro nicht "Geburtstag" sondern "auto_open" nennt.

Zu 2.
Die Variablendeklarationen erweiterst Du um: Dim Tag As Date
Folgende Zeile: If Day(Cells(z, 6).Value) = Day(Date) And Month(Cells(z, 6).Value) = Month(Date) Then
ersetzen durch diese zwei Zeilen:
Tag = DateSerial(Year(Date), Month(Cells(z, 6).Value), Day(Cells(z, 6).Value))
If Tag >= Date And Tag <= Date + 7 Then

Zu 3.
Vor der Zeile "End Sub" fügst Du folgende Zeile ein: Sheets("Blattname").select
Wobei natürlich Blattname durch einen in Deiner Mappe Gültigen ersetzt werden muß.

Anzeige
Re: Danke BerndL - hat funktioniert!!!
19.05.2002 20:20:58
Klaus W.
Vielen Dank für die rasche Antwort.

Hat super funktioniert.

mfg Klaus W.

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige