Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Geburtstag vergleichen

Forumthread: Geburtstag vergleichen

Geburtstag vergleichen
01.03.2008 16:38:00
Kurt
Hallo,
habe folgende Zeilen im Makro:
Sub Geburtstag_test()
If Format(ActiveSheet.Range("B1").Value, "dd.mm.") = _
Format(ActiveSheet.Range("G:G", "dd.mm.")) Then
MsgBox "das ausgewählte Mitglied hat heute Geburtstag"
Else
MsgBox "Nein, keiner hat Geburtstag !"
End If
leider funktioniert es nicht,
gr Kurt P

Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Geburtstag vergleichen
01.03.2008 16:44:00
Jan3
Hi,
Wie sieht Deine Ausgangstabelle aus? Wie sehen die Datumseinträge in der Spalte G aus?
Eine Beispieltabelle wäre sinnvoll!
Jan

AW: Geburtstag vergleichen
01.03.2008 16:58:40
Kurt
Hey Ja, anbei:
z.b. 01.07.1948
ab Zeile 3 bis Ende Spalte A ist Nummerierung.
gr Kurt P

AW: Geburtstag vergleichen
01.03.2008 17:07:33
Tino
Hallo,
da du nur nach Tag und Monat suchst , würde ich über die
Daten in G:G eine Schleife legen und diese einzeln vergleichen.
angenommen in Spalte G stehen die Daten und in F die Namen:

Sub test()
Dim sucheD As String, Liste As String
Dim a As Long
sucheD = Format(Range("B1"), "dd.mm")
For a = Range("G28").End(xlUp).Row To 1 Step -1
If Format(Cells(a, 7), "dd.mm") = sucheD Then
Liste = Liste & Cells(a, 6) & Chr(13)
End If
Next a
If Liste > "" Then
MsgBox "Geburtstag hat heute" & Chr(13) & Liste
Else
MsgBox "heute hat keiner Geburtstag"
End If
End Sub


Gruß
Tino

Anzeige
leider nicht
01.03.2008 17:22:00
Kurt
Hey Tino,
habe mal angepaßt leider kein Erfolg:

Sub test()
Dim sucheD As String, Liste As String
Dim a As Long
sucheD = Format(Range("B1"), "dd.mm")
For a = Range("G3").End(xlUp).Row To 1 Step -1
If Format(Cells(a, 7), "dd.mm") = sucheD Then
Liste = Liste & Cells(a, 7) & Chr(13)
End If
Next a
If Liste > "" Then
MsgBox "Geburtstag hat heute" & Chr(13) & Liste
Else
MsgBox "heute hat keiner Geburtstag"
End If
End Sub


in der Spalte 7(G) ab Zeile 3 stehen die Geburtstage.
gr Kurt P

Anzeige
AW: leider nicht
01.03.2008 17:41:41
Josef
Hallo Kurt,
probier mal so.
Sub test()
Dim sucheD As Date, Liste As String
Dim rng As Range

sucheD = DateSerial(Year(Date), Month(Range("B1")), Day(Range("B1")))

For Each rng In Range(Cells(2, 3), Cells(Range("A" & Rows.Count).End(xlUp).Row, 3))
    If rng = sucheD Then
        Liste = Liste & Cells(rng.Row, 6) & Chr(13)
    End If
Next

If Liste <> "" Then
    MsgBox "Geburtstag hat heute" & Chr(13) & Liste
Else
    MsgBox "heute hat keiner Geburtstag"
End If

End Sub


Gruß Sepp



Anzeige
AW: leider nicht
01.03.2008 19:06:00
Kurt
Hey Sepp,
es wird nichts gefunden, hatte schon mal anstelle 6 die 7 reingesetzt, auch nicht.
Liste = Liste & Cells(rng.Row, 6) & Chr(13)
gr Kurt P

Sepp habe noch geändert jetzt läuft es.
01.03.2008 19:15:00
Kurt
Hey Sepp,
habe das geändert läuft !
In Range(Cells(2, 3<<<< 7 reingesetzt.
Ich möchte das ganze von der UF aus durchführen, was muß ich da beachten ?
Oder auch ändern?
If Format(ActiveSheet.Range("B1").Value, "dd.mm.") = _
Format(UFData.TextBox7.Text, "dd.mm.") Then
gr Kurt P

Anzeige
AW: leider nicht
01.03.2008 17:44:00
Tino
Hallo,
versuche es so,
Range("G65500").End(xlUp).Row, von unten her die erste benutzte zelle bestimmen.

Sub test()
Dim sucheD As String, Liste As String
Dim a As Long
sucheD = Format(Range("B1"), "dd.mm")
For a = Range("G65500").End(xlUp).Row To 1 Step -1
If Format(Cells(a, 7), "dd.mm") = sucheD Then
Liste = Liste & Cells(a, 7) & Chr(13)
End If
Next a
If Liste > "" Then
MsgBox "Geburtstag hat heute" & Chr(13) & Liste
Else
MsgBox "heute hat keiner Geburtstag"
End If
End Sub


Gruß
Tino

Anzeige
Tino das Datum wird angezeigt
01.03.2008 19:03:00
Kurt
Hey Tino,
jetzt werden 4 x die Datumswerte angezeigt.
Kann man die entsprechenden gefundenen Zeilen in die Tabelle "Druck_Daten"
ab Zeile 3 reinkopieren.
von der Spalte "A" bis Spalte "N" ?
gr Kurt P

AW: Tino das Datum wird angezeigt
01.03.2008 19:32:33
Tino
Hallo,
zum Verständnis,
Liste = Liste & Cells(a, 7) & Chr(13)
diese Zeile baut eine liste auf.
Cells(a, 7) ist ja die Zelle mit dem Datum (Spalte G entspricht der 7).
Möchtest du einen anderen Wert als dieses Datum zBsp: den Namen
so musst du entsprechend die die 7 ändern.
Spalte A wäre die 1, Spalte B wäre die 2 usw…
Hier noch eine Beispielmappe
https://www.herber.de/bbs/user/50334.xls
Gruß
Tino

Anzeige
Danke ich glaube das reicht,mal sehen -)
01.03.2008 20:24:25
Kurt
Hallo Tino,
danke für die Hinweise !
Ich muß mal sehen wie ich das hinkriegen mit ausdrucken.
gr Kurt P
;

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