Vi rimettiamo una semplice funzione per controllare una partita iva (passata come stringa) se è valida. In caso di esito positivo la funzione restituisce zero.
Public Function CheckPartitaIva(ByVal sz_Codice As String) As Integer
'======================================
'Controllo la partita iva
'======================================
Dim n_Val As Integer
Dim n_Som1 As Integer
Dim n_Som2 As Integer
Dim lcv As Integer
If sz_Codice = "" Then CheckPartitaIva = -1: Exit Function
'Gestione prefisso nazionale sulla partita IVA
If Not IsNumeric(Mid(Trim(sz_Codice), 1, 2)) Then
sz_Codice = Mid(Trim(sz_Codice), 3, Len(sz_Codice))
ElseIf Not IsNumeric(Mid(Trim(sz_Codice), 1, 3)) Then
sz_Codice = Mid(Trim(sz_Codice), 4, Len(sz_Codice))
End If
For lcv = 1 To 9 Step 2
n_Val = Val(Mid$(sz_Codice, lcv, 1))
n_Som1 = n_Som1 + n_Val
n_Val = Val(Mid$(sz_Codice, lcv + 1, 1))
n_Som1 = n_Som1 + Int((n_Val * 2) / 10) + ((n_Val * 2) Mod 10)
Next lcv
n_Som2 = 10 - (n_Som1 Mod 10)
If n_Som2 = 10 Then n_Som2 = 0
n_Val = Val(Mid$(sz_Codice, 11, 1))
If n_Som2 = n_Val Then
CheckPartitaIva = 0
Else
CheckPartitaIva = n_Som2 + 48
End If
End Function
Nessun commento:
Posta un commento
Cosa ne pensi?