EXCEL PROBLEM! Wenn-Dann-Formel für die Bestimmung von Altersgruppen

5 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hier mal die Formel für die Zelle E6 und nur einer wenn Verschachtelung. Die 12 habe ich nur als Test eingesetzt. Den Rest must du über die "Oder" Funktion erweitern.

=WENN(UND(E6>DATUM(1983;12;1);E6<DATUM(1992;1;1));"18-25";"12")

Viel Glück

alwaysonmymind 
Fragesteller
 05.10.2009, 11:38

Vielen Dank!!! Habe es jetzt versucht, nun sieht die Grütze so aus:

=WENN(UND(E4>DATUM(1983;12;31);E4<DATUM(1992;01;01);"18-25"; WENN(UND(E4>DATUM(1973;12;31);E4<DATUM(1984;01;01);"26-35"; WENN(UND(E4>DATUM(1963;12;31);E4<DATUM(1974;01;01);"36-45"; WENN(UND(E4>DATUM(1953;12;31);E4<DATUM(1964;01;01);"46-55"; WENN(UND(E4>DATUM(1940;12;31);E4<DATUM(1954;01;01);"56-68"; WENN(UND(E4>DATUM(1928;12;31);E4<DATUM(1939;01;01);"69-80"))))))))))))

Leider bekomme ich immer noch einen Fehler angezeigt...

und zwar wird DATUM vor (1953;12;31) markiert...

kann mir nicht erklären, woran das liegen mag, habe ich vielleicht zu viele wenndanns?

0
Schnulli00  05.10.2009, 12:10
@alwaysonmymind

Es fehlt eine Klammer hinter der UND-Formel.

=WENN(UND(E4>DATUM(1983;12;31);E4<DATUM(1992;01;01));"18-25";...uswusw

Muss überall noch ergänzt werden.

0
alwaysonmymind 
Fragesteller
 05.10.2009, 12:22
@Schnulli00

JUHU! JUHU! JUHU! ES FUNZT, ES FUNZT, ES FUNZT! VIELEN LIEBEN DANK!!!

0

mir fehlt der grips, um mich durch diese schlange von bedingungen durchzufressen. mein rat: machs einfacher. wende die wenn/dann-funktion nur auf eine altersgruppe an und lasse dir diese als 1, die personen im unpassenden alter als 0 angeben. das machst du für jede altersgruppe und hast dann 6 variablen, nach denen du schon mal sortieren kannst. dann stellst du eine spalte her, in der du die info kombinierst. du sortierst nach der ersten altersklasse und schreibst die info in die neue spalte, dann sortierst du nach der nächsten altersvariablen und es stehen wieder die 1er in einer reihe, so dass du ihnen in der neuen spalte leicht einen wert eintragen kannst.

alwaysonmymind 
Fragesteller
 05.10.2009, 10:59

Mein lieber Herr Gesangsverein...

Ich werde es mal versuchen, obwohl... so viel simpler scheint das auch nicht zu sein... aber wenn es hilft... ;-)

0

Ersetze alle Datumsangaben oben in deiner Formel durch DATWERT

=WENN(UND(E4>DATWERT("31.12.1983");E4<DATWERT("01.01.1992")....uswusw

hier als Beispiel für den Anfang der Funktion bei dir oben.

das Problem ist, dass du nicht einfach so ein Datum als Vergleich heranziehen kannst, da Excel intern für jedes Datum eine fortlaufende Zahl verwendet. Und diese msst du vergleichen. Mit DATWERT erstellst du diese Zahl aus dem Textstring der Datumsangabe. somit lässt sich nun rechnen. Wichtig ist, dass Spalte E auf Datum formatiert ist.

Schnulli00  05.10.2009, 12:04

hm, sehe gerade, das ist sinngemäß nix anderes als die Formel oben von zweifingerjoe....

0
Schnulli00  05.10.2009, 12:10
@Schnulli00

Es fehlt eine Klammer hinter der UND-Formel.

=WENN(UND(E4>DATUM(1983;12;31);E4<DATUM(1992;01;01));"18-25";...uswusw

Muss überall noch ergänzt werden.

0
alwaysonmymind 
Fragesteller
 05.10.2009, 12:23
@Schnulli00

JUHU! JUHU! JUHU! ES FUNZT, ES FUNZT, ES FUNZT! VIELEN LIEBEN DANK!!!

0

Muss es denn unbedingt ne Wenn-Dann Formel sein? bau dir irgendwo ne Hilfstabelle in meinem Fall in G1:H8 die folgendermassen aussieht

69-80 80

56-68 68

46-55 55

36-45 45

26-35 35

18-25 25

0-17 17

Die Formel lautet dann: =INDEX($G$1:$G$8;VERGLEICH(DATEDIF(B6;HEUTE();"Y");$H$1:$H$8;-1))

in B6 steht das relevante Geburtsdatum den Bereich halt dementsprechend anpassen Achte auf die absteigende Reihenfolge der Hilfstabelle.

alwaysonmymind 
Fragesteller
 06.10.2009, 13:27

Vielen Dank für Deine Antwort, habe bereits eine andere Lösung dafür gefunden... (siehe hilfreichste Antwort)

0

Ich würde das Ganze auch über die Altersgruppen steuern. Aber zuerst muss du die Differenz richtig berechnen.

=datedif(a1;heute();"Y")

dann kannst Du deine wenn Abfrage ungefähr so:

=WENN(UND(E1>=18; E1<=25);1;WENN(UND(E1>=26; E1<=35);2;WENN(UND(E1>=36; E1<=45);3;0)))

einsetzen (habe hier nur 3 Gruppen betrachtet).