Έλεγχος εγκυρότητας ΑΦΜ
Αυτό κάπου πρέπει να το βρήκα και να το τροποποίησα λίγο, αν και ήξερα από παλαιότερα τον αλγόριθμο. Anyway, δεν θυμάμαι περισσότερα, αλλά ο κώδικας έχει ως εξής:
Public Module VatId
Public Function IsValid(ByVal VatId As String) As Boolean
'if afm is valid returns true else returns false.
Dim i As Byte
Dim sum As Integer
sum = 0
'Calculate Sum
For i = 0 To 7
sum = sum + (2 ^ (8 - i)) * CInt(VatId.Substring(i, 1))
Next
'Find residual from division sum/11
Dim residual As Single
residual = sum Mod 11
Dim lastdigit As Integer
If residual = 10 Then
lastdigit = 0
Else
lastdigit = residual
End If
'Check if the ninth digit equals lastdigit.
If lastdigit <> CInt(VatID.Substring(8, 1)) Then
Return False
Else
Return True
End If
End Function
End Module