Hur du fastställer en persons kön utifrån dennes personnummer i Access

Nivå: avancerat

Ibland har man inte tillgång till personers kön utan bara tillgång till personens personnummer. Nu är det ganska enkelt att, utifrån denna information fastställa en persons kön. I denna bloggpost skall jag ge ett exempel på hur man kan göra, genom att använda de inbyggda funktionerna  IIF,  Left och Right i Access.

Det svenska personnumret skrivs vanligtvis efter formatet 121212121212, dvs det är tolv tecken långt. Det första vi måste göra är att förstå hur det är uppbyggt. Om du är osäker, rekommenderar jag att du går till Skatteverkets hemsida för mer information. De har en mycket bra beskrivning över hur personnumret fungerar.

Steg 1 – Funktionen Left

Vad som är viktigt är de fyra sista siffrorna av ett personnummer. Av dessa fyra sista siffror är det den näst sista siffran som är viktig. I vårt fall blir det den elfte siffran. All udda siffror är män, dvs. 1,3,5,7,9 och alla jämna siffror är kvinnor, dvs. 0,2,4,6,8. Genom denna kunskap kan vi nu konstruera en lösning. Det första vi gör är att konstruera en fråga i Access, som använder funktionen Left. Vi skriver uttrycket så att de elva första siffrorna från vänster räknat hämtas och vi lägger dessa värden i en kolumn som vi kallar PNR01. (se nedanstående skärmbild)

FunktionenLeft11

 

Steg2 – Funktionen Right

Nu när har vi skapat fältet, PNR01, skall vi frilägga den sista (elfte!) siffran helt i fältet PNR01 och lägga dessa värden i ett nytt fält som heter Sex01.  Vi gör detta genom att använda funktionen Right. Funktionen right hämtar värden från höger räknat.  Anledningen till att vi gör detta är att vi enkelt ska kan utvärdera, om de är udda eller jämna siffror i fältet Sex01.(se nedanstående skärmbild)  

FunktionenRight

 

Steg3 – IIF-satsen

I detta steg bestäms könet på individerna beroende på om siffran är jämn eller udda i fältet Sex01. Vi löser detta genom att konstruera en IIF-sats. Nedanstående IIF-sats kanske upplevs som avancerad, men egentligen är det enkel logik. Det som är viktigt är att man måste vara noga med de olika tecknen, t.ex parenteser och citat-tecken så man har lika många vänster som höger parenteser i uttrycket. (se nedanstående skärmbild)

IIF-satsen Kön från PNR

 

Steg4 – slutresultatet

I nedanstående skärmbild ser vi den färdiga lösningen med fältet Sex01 som har den elfte siffran i personnumret, udda eller jämn, och fältet Sex02 där vi har utvärderat om det är en man eller kvinna, genom IIF-satsen i Steg3. Notera att fältet Sex02 har ”m” om det är en man och ”kv” om det är en kvinna.

IIF-satsen Kön från PNR - 2

Kommentar

Genom att först bryta ner frågeställningen och översätta den i tre delsteg kan vi tämligen enkelt konstruera en lösning, som skapar en individs kön i ett personnummer, genom att använda funktionerna Left, Right och IIF i Access.

Share