Codice:
Function IsCreditCard(ByVal CreditCardNumber As String) As Boolean

	Dim i As Long
	Dim j As Long
	Dim n As Long
 
	For i = 1 To Len(CreditCardNumber)
		j = Val(Mid$(CreditCardNumber, i, 1))
		If (Len(CreditCardNumber) And 1) = 0 Then
			If i And 1 Then
				j = j * 2
				If j > 9 Then j = j - 9
			End If
		Else
			If (i And 1) = 0 Then
				j = j * 2
				If j > 9 Then j = j - 9
			End If
		End If
		n = n + j
	Next
 
	IsCreditCard = (n Mod 10) = 0
 
End Function