Tipps & Tricks 31.03.2003, 12:45 Uhr

Excel-Berechnung: Wer ist älter als 50?

Ich möchte all meinen Kunden, die 50 oder älter sind, zu ihrem Geburtstag eine Karte schicken. Wie kann ich mir diese Kunden aus einer Tabelle anzeigen lassen?
Datumsangaben werden in Excel abhängig vom Startdatum 1.1.1900 als fortlaufende Zahlen gespeichert, der 30.3.2003 ist in Excel z.B. die Zahl 37710, das bedeutet, der 30.3.2003 liegt 37709 Tage nach dem 1.1.1900.
Wenn Sie also einfach das Geburtsdatum vom heutigen Datum subtrahieren und überprüfen wollen, ob es größer als 50 ist, wird das nicht funktionieren, denn für Excel steht für 50 Jahre die Zahl 18262 (das ist das Datum 30.12.1949), und somit wären alle Personen in Ihrer Tabelle älter als 50 Jahre, denn 18262 ist grösser als 50.
Warum der 30.12.1949 und nicht der 31.12.1949? Weil die Rechnung in Excel für den 1.1.1900 mit der Zahl "1" beginnt und gleichgesetzt wird. Somit muss man diese "1" also bei der Rechnung erst einmal wieder abziehen.
Wenn Sie dies alles wissen, ist die Berechnung eigentlich sehr einfach.
Sie geben in einer Zelle das Geburtsdatum Ihres Kunden ein, z.B. in der Zelle B2.
Dann geben Sie in der Zelle daneben, also C2, die Formel für das heutige Datum ein, das heisst dort steht: =HEUTE()
In die nächste Zelle, das heisst in die Zelle D2, geben Sie das Datum "30.12.1949" ein, das sind die 50 Jahre, die Sie subtrahieren wollen.
In der Zelle E2 geben Sie nun die Formel für die Berechnung ein:
=WENN(C2-B2>=D2;"50 oder älter";"noch keine 50")
In diesem Falle werden alle Kunden, die heute oder davor 50 Jahre alt geworden sind, mit dem Text "50 oder älter" markiert, alle anderen mit dem Text "noch keine 50".
Wollen Sie nur die über 50-Jährigen markieren, lassen Sie die SONST-Bedingung in der WENN-Funktion weg, also dann heisst die Formel:
=WENN(C2-B2>=D2;"50 oder älter";"")
Das Ergebnis sieht nun so aus:
Zu kompliziert? Dann gibt es natürlich auch noch den "klassischen" Weg. Dabei sieht die Formel dann etwas anders aus, das Ergebnis ist jedoch selbstverständlich dasselbe.
Nun wäre es noch ganz praktisch, das exakte Alter zu wissen, das ermitteln wir in Spalte E. Die Formel lautet ganz einfach so:
Hoppla, denken Sie sich jetzt, warum konnte ich es denn nicht von Anfang an so einfach machen?
Die Erklärung ist simpel: Diese Altersausgabe ist lediglich eine optische Täuschung, das heisst sie entsteht allein aus einer bestimmten Formatierung der Zelle. In Wirklichkeit steht in dieser Zelle das Datum "30.12.1945", wir schneiden aber mit dem Zellenformat einfach den Tag und den Monat ab.
Und so steht hier ein Alter, das eigentlich eine Jahreszahl ist. Da es aber seinen Zweck erfüllt, kann man diesen einfachen Weg wählen, wenn man nicht weiter mit der Altersangabe rechnen muss. Zum Rechnen muss man, wie oben beschrieben, wieder die Formel JAHR() einsetzen.



Kommentare
Avatar
-ian
24.01.2008
Wenn Du in Spalte A das Alter hast, Zum Beispiel in A1 70 schreibst Du In B1: WENN(REST(A1;10)=0;A1;"") Du hast dann in der Spalte B nur noch die Runden. Diese kannst du dann bedingt Formatieren. -ian

Avatar
Gaby Salvisberg
24.01.2008
was ist der Befehl &quot? Da wurden offenbar im letzten Sommer ein paar Zeichen falsch umkodiert, als wir die Daten (inkl. diesem Kummerkastenbeitrag) von der alten auf die neue Webseite transferierten. Ich habs nun korrigiert :) Gruss Gaby

Avatar
tula
25.01.2008
Da wurden offenbar im letzten Sommer ein paar Zeichen falsch umkodiert, als wir die Daten (inkl. diesem Kummerkastenbeitrag) von der alten auf die neue Webseite transferierten. Ich habs nun korrigiert :) Gruss Gaby erst mal danke und ich hab´s gleich probiert. Nun würde ich die Funktion gerne verstehen? In A1 steht ja nicht 70 sondern eine Zahl z.B. 2135 was ja einem Datum entspricht. Deshalb wird das Ergebnis (Ergebnisfeld) auch nur eine Zahl in Abhängigkeit vom Datum sein. Und ich möchte ja auf "runde und fünfer" Geburtstage abfragen. Es müßten alle Geburtstage (sichtbaren Ergebnisse) als absolute Zahl übertragen werden können, dann wär´s einfacher. Wie geht das?

Avatar
tula
25.01.2008
Sorry, ich gebe nicht auf. habe inzwischen viel probiert, komme aber nicht weiter. Deshalb wieder meine Frage, denn:das Ergebnis der Subtraktion Datum heute minus Geburtsdatum ist ein Datum und keine Zahl. Wie wandele ich dieses Datum in eine ZAHL um???? Vorab schon mal danke.

Avatar
-ian
25.01.2008
Also: In eine Zelle z.B. A1 Schreibst Du =HEUTE() in Zelle B1 Schreibst Du =JAHR(A1) Dann hast du in A3 "Meier" und in B3 "22.11.148", in C3 kommt =WENN($B$1-JAHR(B3)>100;0;($B$1-JAHR(B3))) Und In D3 schreibst Du =WENN(REST(C3;10)=0:C3:WENN(REST(C3;5)=0,C3;"")) Das Ganze runterziehen. Danach, wenn Du willst, Spalte C ausblenden. (Format/ Spalte/ ausblenden) fertig. -ian