验证比利时IBANS的代码

时间:2014-05-20 12:45:09

标签: excel excel-vba iban vba

有人可以帮我在Visual Basic for Applications(Excel)中创建一个用于验证比利时IBAN号码的函数吗?所以我可以在Excel中添加一个数字列表,并将它们验证为TRUE或FALSE。

比利时IBAN号码示例:

  

BE43 1325 3117 7701

在寻求帮助之前,我尝试了几件事。我试图调整我在本网站早期主题中找到的代码,即:

Public Function VALIDATEIBAN(ByVal IBAN As string) As Boolean
On Error GoTo Catch

Dim objRegExp As Object
Dim blnIsValidIBAN As Boolean

Set objRegExp = CreateObject("vbscript.regexp")
objRegExp.IgnoreCase = True
objRegExp.Global = True
objRegExp.Pattern = "^[a-zA-Z]{2}\d{2}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}|CZ\d{22}$"



blnIsValidIBAN = objRegExp.Test(IBAN)
VALIDATEIBAN = blnIsValidIBAN

Exit Function

Catch:
VALIDATEIBAN = False
MsgBox "Module: " & MODULE_NAME & " - VALIDATEIBAN function" & vbCrLf & vbCrLf _
    & "Error#:  " & Err.Number & vbCrLf & vbCrLf & Err.Description
End Function

我一直试图通过调整来修改:

objRegExp.Pattern = "^[a-zA-Z]{2}\d{2}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}[ ]\d{4}|CZ\d{22}$"

我从明显的开始,删除支票的八个位置,如下:

objRegExp.Pattern = "^[a-zA-Z]{2}\d{2}[ ]\d{4}[ ]\d{4}[ ]\d{4}|CZ\d{22}$"

这样我就可以在Excel中获取代码来验证"无论是真是假,但我认为只要删除代码中的位置,我也会删除代码在IBAN号码上执行实际验证的能力。

0 个答案:

没有答案