Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketcpr nr til alder over 99 år

 Besvar Besvar
Forfatter
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Emne: cpr nr til alder over 99 år
    Sendt: 02.Okt.2013 kl. 15:01
Wow, tak for hurtigt svar! Ja self det giver jo mening - er stadigvæk en novice i excel-formler, men begynder at have en grundlæggende forståelse Smile
Til top



Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 02.Okt.2013 kl. 14:52
Du kan vel bare bruge min formel, uden aldersberegningsdelen:

=DATO(HVIS(OG(ELLER(VENSTRE(HØJRE(E2;4);1)*1=4;VENSTRE(HØJRE(E2;4);1)*1=9);VENSTRE(HØJRE(E2;6);2)*1<37);2000;HVIS(OG(VENSTRE(HØJRE(E2;4);1)*1>4;VENSTRE(HØJRE(E2;6);2)*1>57);1800;1900))+(VENSTRE(HØJRE(E2;6);2)*1);VENSTRE(HØJRE(E2;8);2)*1;VENSTRE(TEKST(E2;"0000000000");2))

PS: Og, delen, der sørger for, altid, at tage datoen med to cifre er: VENSTRE(TEKST(E2;"0000000000");2)
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Sendt: 02.Okt.2013 kl. 14:43
Ja, så er der så lige det næste spørgsmål Smile?
 
Hvis jeg også gerne vil have fødselsdagen til at stå i en celle som dd-mm-åå vil jeg anvende denne formel:
=DATO(MIDT(E2;5;2);MIDT(E2;3;2);VENSTRE(E2;2)) (cpr nr står i celle E2)
Problemet er så bare at jeg både har cpr nr med 9 (uden foranstillet 0) og 10 cifre - hvor bygger jeg en formel sammen så der tages højde for det??
 
Helt fantaktisk forum - man lærer jo vildt meget ved at læse indlæggene!! Og så er det virkelig fedt at folk svarer så hurtigt !!!
Til top
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Sendt: 02.Okt.2013 kl. 14:13
Hej Excelgaard,
 
Tak for svar, men den havde jeg nu godt selv regnet ud.
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 30.Sep.2013 kl. 11:43
Hej Cecilia,

Hvis du kigger på min formel, så kan du i slutningen finde argumentet 'IDAG()'.

Dette angiver, at alderen bliver beregnet ud fra dags dato - og, her kan du i stedet angive en celle, f.eks. B1, hvor du har en dato, som du ønsker beregnet ud fra.
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Sendt: 30.Sep.2013 kl. 11:39
@ Allan,
 
Mange tak for svar - og formel :) Den ser rigtig fin ud og har hjulpet mig til at forstå hvordan man kan sætte sådanne formler op - tak! Jeg skal mere konkret bruge alderen på en given dato - hvor i formlen skal denne dato placeres? til sidst? , ligesom din tidligere formel for personer op til 99 år?
 
/Cecilia
Til top
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Sendt: 30.Sep.2013 kl. 11:36
@ Excelgaard,
 
Ja, det kan jeg da godt se nu at der er (den havde jeg simpelthen overset) - super, tak!
 
//Cecilia
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 30.Sep.2013 kl. 08:12
Nu er det ikke fordi jeg skal forklejne nogle af jer, men...

1) Der er altså en ganske almindelig regnearksformel (uden makroer) på det link, som jeg startede med at give!
2) Og, den formel, som er på det link, er BETYDELIGT kortere end den som Allan giver (sorry, Allan :-)

Faktisk er min formel kun ca. halvt så lang:

=DATO.FORSKEL(DATO(HVIS(OG(ELLER(VENSTRE(HØJRE(A1;4);1)*1=4;VENSTRE(HØJRE(A1;4);1)*1=9);VENSTRE(HØJRE(A1;6);2)*1<37);2000;HVIS(OG(VENSTRE(HØJRE(A1;4);1)*1>4;VENSTRE(HØJRE(A1;6);2)*1>57);1800;1900))+(VENSTRE(HØJRE(A1;6);2)*1);VENSTRE(HØJRE(A1;8);2)*1;VENSTRE(TEKST(A1;"0000000000");2))*1;IDAG();"y")

...og, du kan endda gøre den endnu kortere, hvis du ikke (som jeg) er så fanatisk med at sikre dig mod formateringsfejl...
...for, så kan du blot fjerne alle de steder i formlen, hvor jeg ganger med 1 (*1), for at sikre mig, at vi arbejder med tal og ikke tekst.

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Allan Se dropdown
Forum Admin
Forum Admin
Avatar
Forum Admin

Medlem: 03.Feb.2010
Land: Danmark
Status: Offline
Point: 10330
Direkte link til dette indlæg Sendt: 29.Sep.2013 kl. 22:15

Hej Cecilia,

 
Så må vi have en af de lange formler frem Tongue
Ifølge Wikipedia, kan man ved hjælp at det 7. ciffer i kombination med det 2 cifrede årstal, finde ud af hvornår personen er født.
Jeg har forsøgt at lave en formel som tager højde for dette, som virker fra 1858 og frem til nu.
Formlen vil virke uanset om du skriver CPR med eller uden bindestreg foran de 4 sidste cifre.
 
Wikipedias tabel ser således ud: http://da.wikipedia.org/wiki/CPR-nummer
Løbenr.Årstal
Ciffer 700-3637-5758-99
0-31900-1999
42000-20361937-1999
5-82000-20571858-1899
92000-20361937-1999
 
 
Hvis jeg koger alt dette sammen i en formel, og ønsker at output skal være fødselsdatoen, vil det blive noget á la:
 
=DATO(HVIS(VENSTRE(HØJRE(A1;4);1)<=3;1900+MIDT(A1;5;2);HVIS(OG(VENSTRE(HØJRE(A1;4);1)=4;MIDT(A1;5;2)<=36);2000+MIDT(A1;5;2);HVIS(OG(VENSTRE(HØJRE(A1;4);1)=4;MIDT(A1;5;2)>=37);1900+MIDT(A1;5;2);HVIS(OG(VENSTRE(HØJRE(A1;4);1)>=5;VENSTRE(HØJRE(A1;4);1)<=8;MIDT(A1;5;2)<=57);2000+MIDT(A1;5;2);HVIS(OG(VENSTRE(HØJRE(A1;4);1)>=5;VENSTRE(HØJRE(A1;4);1)<=8;MIDT(A1;5;2)>58);1800+MIDT(A1;5;2);HVIS(OG(VENSTRE(HØJRE(A1;4);1)=9;MIDT(A1;5;2)<=36);2000+MIDT(A1;5;2);1900+MIDT(A1;5;2)))))));MIDT(A1;3;2);VENSTRE(A1;2))
 
 
Jeg krydser fingre for at det virker hos dig Smile
 
//Allan
Til top
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Sendt: 27.Sep.2013 kl. 13:31

Tak for svar.

 
Mit problem er så bare at jeg arbejder på en sygehus, hvorfor sikkerhedsniveauet er sat ekstra højt, og jeg har derfor ikke tilladelse til at kører makroer...
 
Er der andre måde man regne alderen for personer over 99 år?
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 23.Sep.2013 kl. 13:04
www.excelgaard.dk/Bib/CPR/ www.excelgaard.dk/Bib/CPR/

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Cecilia_Stroejer Se dropdown
Forum Begynder
Forum Begynder


Medlem: 23.Sep.2013
Land: Danmark
Status: Offline
Point: 13
Direkte link til dette indlæg Sendt: 23.Sep.2013 kl. 11:33
Hej!
 
Jeg har brugt denne fantastiske formel til at beregne alderen ud fra cpr. nr. med både 9 og 10 cifre.
=HVIS(LÆNGDE(A2)=10;DATO.FORSKEL(DATO(HVIS(MIDT(A2;5;2)<=HØJRE(ÅR(B2());2);"20"&MIDT(A2;5;2);MIDT(A2;5;2));MIDT(A2;3;2);VENSTRE(A2;2));B2();"y");DATO.FORSKEL(DATO(HVIS(MIDT(A2;4;2)<=HØJRE(ÅR(B2);2);"20"&MIDT(A2;4;2);MIDT(A2;4;2));MIDT(A2;2;2);VENSTRE(A2;1));B2;"y"))

Mit problem er så bare at den kun gælder for personer op til 99 år. Jeg har med en ældre population at gøre og dermed også personer over 99 år. Er der en måde formlen kan ændres/udvides så den også kan beregne personer over 99 år??

På forhånd mange tak!
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk