Kontrollera personnummer.
Nu när det är aktuellt med att använda hela personnumret vilket innebär att årtalet skrivs med fyra siffror. Finns det någon som har gjort ett makro till Access 2000 som kontrollerar om personnumret är korrekt eller ej?
Svara
Sv: Kontrollera personnummer.
kanske den där hjälper? http://www.kentexcel.com/VB-tips.htm#PersNr
Svara
Sv:Kontrollera personnummer.
Ne de tar bara personnummer där årtalet skrivs med två siffror. Nu har vi ju personnummer med 19xx samt 20xx.
Svara
Sv: Kontrollera personnummer.
Jo men det är ju ingen skillnad....
Kontrollsiffran räknas ut på ett personnumemr utan århundrade, så du får helt enkelt skala bort de första två siffrorna innan du gör kontrollen.
// Johan
Svara
Sv:Kontrollera personnummer.
Ahhh då är jag med på det hela. Det här blev lösningen då.
Private Sub Personnummer_AfterUpdate()
Dim i As Integer
Dim x As Integer
Dim kSiffra As Integer
Dim resten As Integer
Dim Subtotal As Integer
Dim Testnr$
Dim Kontrollsumma As Integer
Testnr = Mid(Personnummer, 3, 5) & Mid(Personnummer, 8, 3)
Kontrollsumma = 0
For i = 1 To 9 Step 2
x = 2 * Val(Mid(Testnr, i, 1))
If x >= 10 Then
Subtotal = 1 + x - 10
Else
Subtotal = x
End If
Kontrollsumma = Kontrollsumma + Subtotal
Next i
For i = 2 To 8 Step 2
Subtotal = Val(Mid(Testnr, i, 1))
Kontrollsumma = Kontrollsumma + Subtotal
Next i
resten = Kontrollsumma Mod 10
If resten = 0 Then
kSiffra = 0
Else
kSiffra = 10 - resten
End If
If kSiffra <> Val(Right(Personnummer, 1)) Then
Beep
i = MsgBox("Ogiltigt personnummer.", vbCritical, prog)
[Personnummer].SetFocus
End If
End Sub
Svara
Sv: Kontrollera personnummer.
Du bör göra ytterligare en koll så kontroll på att dina första siffror är ett giltigt datum.
Annars brukar 0000000000 gå genom många personnummerkontroller.
Samt det går samtidigt att kontroller att datumet inte är större än dagens datum.
/Micke
Svara