Avatar billede perbjo Juniormester
13. oktober 2020 - 09:08 Der er 17 kommentarer

Udfordring: Fødselsår i forkert århundrede

Hej
Der er rigtig mange gode artikler omkring datoberegning herinde, men jeg kan ikke finde svaret på mit problem.

Jeg har et fiktivt cpr.nr. (010527-7999), som jeg vil hente fødselsdatoen fra og konvertere det til dato format.
Jeg bruger denne formel: =TEKST(VENSTRE(C31;6);"00-00-00")+0, men den sætter fødselsåret til 2027...
Hvordan korrigerer jeg formlen, så den passer?
Formlen skal bruges til en lang række cpr numre, og den skal helst kun tastes én gang ;)
Og personer der er over 100 år, fx født i 1919, skal de korrigeres manuelt eller er der også en metode/formel til det?
Formlen skal bruges til en lang række cpr numre, og den skal helst kun tastes én gang ;)

Jeg håber, der er hjælp at finde herinde :)

/Per
Avatar billede kim1a Ekspert
13. oktober 2020 - 09:19 #1
Først tænkte jeg noget med idag formlen, men det er klart at et cpr kan være både i 2009 og 1909, eller har du en minimumsalder der fungerer?

Hvordan afgør du om det er det ene eller det andet? (udover de åbenlyse hvor årtallet endnu ikke er kommet her i 20xx?)
Avatar billede jakobdo Ekspert
13. oktober 2020 - 09:20 #2
Avatar billede perbjo Juniormester
13. oktober 2020 - 09:24 #3
Jeg har lige lavet en lille test, der viser at alle årstal fra 00 - 29 vises som 2000 - 2029, derefter bliver de vist som 19XX fx årstal 31 bliver 1931.
Avatar billede perbjo Juniormester
13. oktober 2020 - 09:29 #4
Jakobdo: Nej, det har jeg først lige set, men jeg ved ikke rigtig, hvordan jeg skal bruge det i forbindelse med mit problem?
Avatar billede ebea Ekspert
13. oktober 2020 - 10:31 #5
#3 - Som du har opdaget, så bruger Excel pr. definition, korte årstal op til 29 som værende  efter 2000. Og alle tal lig med 30, og efter, defineres som værende i 1900.
Avatar billede jakobdo Ekspert
13. oktober 2020 - 10:32 #6
#4 Prøv at se side 5 på pdf'en. Tallene i position 7-10 fortæller dig om årstallet er i 1900 eller 2000.
Avatar billede bjarnehansen Seniormester
13. oktober 2020 - 19:04 #7
https://www.dropbox.com/s/jp9zhtv4egvseva/Excel%20cpr%20til%20dato%2000.01.01.xlsm?dl=0

tag et kig på denne, den sætter det rigtige århundrede foran ved et rigtigt cpr nr.
Avatar billede ebea Ekspert
14. oktober 2020 - 10:12 #8
#7 - Hvis du kigger på det som OP skriver, så kan jeg ikke se, at dit eksempel skulle give et anderledes (korrekt) resultat. Excel bruger stadig opsætningen som jeg skrev i #5. Og det gør sig også gældende i dit eks., som med OP eks. vil vise det som OP allerede har konstateret.
Avatar billede store-morten Ekspert
14. oktober 2020 - 14:02 #9
Når man læser de forskellige indlæg, opdager man der er regler for korrekt cpr. nummer.

Så skal man ikke sikre sig at det er et cpr. nummer man beregner på?

"Jeg har et fiktivt cpr.nr. (010527-7999)"
Cpr-nummer  010527-7999 er ikke gyldigt !!

Cpr. nummer i A2 tjekket med formlen:
=HVIS(VÆRDI(HØJRE(A2;1))=11-REST(VENSTRE(A2)*4+MIDT(A2;2;1)*3+MIDT(A2;3;1)*2+MIDT(A2;4;1)*7+MIDT(A2;5;1)*6+MIDT(A2;6;1)*5+(MIDT(A2;8;1)*4+MIDT(A2;9;1)*3)+MIDT(A2;10;1)*2;11);"Cpr-nummer OK";"Cpr-nummer ikke gyldigt")
Avatar billede jakobdo Ekspert
14. oktober 2020 - 14:37 #10
#9: Vær dog obs på denne: https://cpr.dk/cpr-systemet/personnumre-uden-kontrolciffer-modulus-11-kontrol/

Modulus 11 er altså ikke en garanti længere. Der er nogle "hvis'er"
Avatar billede store-morten Ekspert
14. oktober 2020 - 14:44 #11
#10 Ja, fra 2007
Avatar billede jakobdo Ekspert
14. oktober 2020 - 15:02 #12
#11: Men de har tildelt cpr numre tilbage i tiden og det begyndte de at gøre i 2007. Så det giver ikke direkte mening og lave modulus check. Selvfølgelig kan man lave det og så tage en masse forbehold, men bliver nok for langhåret i et excel ark.
Avatar billede perbjo Juniormester
14. oktober 2020 - 16:31 #13
#9 Det er lidt vildt, synes jeg, at Excel ved, hvad der er et gyldigt og ugyldigt cpr.nr.... Hvor henter programmet data fra?
Avatar billede store-morten Ekspert
15. oktober 2020 - 08:43 #14
#12 Ifølge artiklen er der udstedt personnumre uden modulus 11 kontrol til personer på 18 dage.
Så jeg ville tage chancen og tjekke de der fejler, manuelt.
F.eks. har de fødselsdag 1 januar?
Avatar billede jakobdo Ekspert
15. oktober 2020 - 09:59 #15
#13: Excel ved ikke om CPR er valid eller ej. #9 har "bare" bygget en modulus 13 kode. Læs nu lige artiklerne og de svar du får tidligere. Ellers kommer du aldrig nogensinde i mål med dit projekt. :)
Avatar billede acore Ekspert
15. oktober 2020 - 10:48 #16
Se http://www.kronsell.net/cpralder.htm

Der er løsningen på dit problem.

Læs også det, der står, om det relevante i et modulus 11 check.
Avatar billede perbjo Juniormester
15. oktober 2020 - 12:31 #17
Tak for alle jeres bud😀 Og som #15 siger, må jeg i gang med at læse og teste😁
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester