Makro für das Alter

Moin,hoffe Ihr habt Weihnachten gut überstanden.
Habe ein Problem mit Excel 2010 und Win-8.2 Prof.
Ich habe ein Kalender der mit Hilfe eines Macro erstellt wird, mit allen Feiertagen und Geburtstage, wobei leider nur der Name aufgeführt wird, siehe… 

’ Geburtstage der Familie und Freunde
Day = 5
Month = 1
Year = 1939
Cells(Day + 1, Month * 2 + 1) = „Christa“
Cells(Day + 1, Month * 2).Interior.Color = RGB(50, 196, 196)
Cells(Day + 1, Month * 2 + 1).Interior.Color = RGB(50, 196, 196)

Gibt es eine möglichkeit, dass gleich hinter den Namen „Christa Alter“ das alter auftaucht.
Habe leider keine Ahnung ob dies überhaupt möglich ist.
Falls jemand eine Idee dazu hat, würde mich dies sehr freuen.

MfG - Heiner

Hallo

Probier es mal mit folgenden Makro.

’ - - - - - -
Sub Geburtstag_Alter()

Dim Day1
Dim Month1
Dim Year1

’ Geburtstage der Familie und Freunde

Day1 = 5
Month1 = 3
Year1 = 1939

Dim Aktuell As Date
Dim Geburtstag As Date
Dim Stichtag As Date
Dim Alter As Integer

Geburtstag = Day1 & „.“ & Month1 & „.“ & Year1
Stichtag = Date

Aktuell = Day(Geburtstag) & „.“ & Month(Geburtstag) & „.“ & Year(Stichtag)

If Aktuell

Hallo Heiner,

Das ist zwar nur eine kleiner Ausschnitt aus einem Makro, aber es sollte reichen.
Ich beziehe mich mit den Altern jetzt mal auf 2015. Dann sollte das so gehen:
Hänge an die Zeile

Cells(Day + 1, Month \* 2 + 1) = "Christa"

noch Folgendes an:

& " " & 2015 - Year

Diese Codepakete, wie du sie hier gezeigt hast, kommen in dem Makro ja vermutlich für jede Person vor. Hänge also immer an die Zeile mit dem Personennamen das o.a. an.

Gruß, frohe Rest-Weihnachten - und bitte Rückmeldung

Andreas

Moin Andreas,
es hat wunderbar geklappt. Hab Dank für deine schnelle Hilfe.

MfG und frohes Schaffen weiterhin
Heiner

keine Tabelle?
Hallo Heinrich-Peter,

anscheinend programmierst Du für jede Person so einen Code-Abschnitt.
So etwas habe ich noch nie gesehen und bin deshalb neugierig.
Weitaus anwenderfreundlicher und übersichtlicher wäre es meiner Ansicht nach, die Personendaten ganz normal in eine Tabelle einzugeben und den Code per Schleife auf diese Daten zugreifen zu lassen, so dass die graphische Übersicht auf einem anderen Blatt erzeugt wird.
Was spricht dagegen?

Guten Rutsch

Thomas

Moin silber (?),
Danke für deine Hilfe. Werde dies auch mit einbauen.
MfG - Heiner

Hallo Thomas,
und ich weiß nicht was du damit meinst und wie so etwas ausschaut.
Ich habe dies Macro schon ein paar Jahre im gebrauch und habe das eine und andere geändert.
Hoffe meine Mail mit Macro kommt gut rüber.

Gruß - Heiner

Hallo Heinrich-Peter,
danke für das Makro und die persönlichen Daten Deiner Freunde / Verwandten :wink:
( habe nicht vor, letztere zu verwenden … )
Läuft wunderbar, wenn man vorher eine Jahreszahl in die Startzelle geschrieben hat.
Es entsteht ein kompletter Jahresplan mit allen Geburtstagen Feiertagen und Wochenenden. Das hat sicher viel Arbeit gekostet und Dir Spaß und Erfahrung gebracht.

Wenn Du vorhast, Dich weiter mit VBA und Excel zu beschäftigen, möchte ich Dir trotzdem ( oder gerade deswegen ) dazu raten, Deine Programmierung zu strukturieren, denn das macht es einfacher, Teile zu ändern und zu pflegen. Und auch während der Entwicklung bringt es Vorteile, weil man Teilprogramme einzeln testen und verbessern kann.
So bietet es sich beispielsweise an, die Formatierung in ein separates Makro zu packen, welches Du dann aus dem Hauptprogramm durch " call Formatierung" aufrufen kannst.
Die Daten dagegen werden üblicherweise nicht in ein Makro gepackt, sondern tabellarisch in ein Tabellenblatt geschrieben ( bei größeren Mengen besser noch in einer Datenbank gespeichert, aber das wäre hier wohl übertrieben ). Wie schon gesagt, ist die Pflege und Kontrolle dann viel einfacher, weil Du nicht jedesmal den Code erweitern musst, wenn ein Verwandter geboren wird oder ein Freund hinzugefügt werden soll.
Dein Makro würde dann aus dem Tabellenblatt zeilenweise den Namen, Geburtsjahr, -monat und -tag auslesen und in Deine Übersicht einfügen sowie die Formatierung anpassen.
Wenn Du Dich zu einer solchen Umstrukturierung entschließt, hilft man Dir hier sicher gerne bei Teilproblemen weiter.
Wie auch immer: Viel Erfolg und Spaß
Thomas

Hallo Thomas,
Danke für deine ausführung. Leider stelle ich fest, dass je älter ich werde (73) desto schwerer fällt es mir in Excel oder Accel zu Experimentieren. Da lasse ich altbewertes in ruhe oder wenn ich etwas sehe dann übernehme ich dies. So habe ich mir deine ausführung durch den Kopf gehenlassen und mein Kopf sagt… Heiner das ist zuviel für dich…

Wünsche dir weiterhin frohes Schaffen und einen guten Rutsch ohne zu stolpern ins neue Jahr 2015

Mfg - Heiner

Deine Entscheidung, Alles Gute o. w. T.
.