Para validar el CBU es necesario crear una función de usuario
Function ValidarCBU(Dato As String) As Boolean
'Clave Bancaria Uniforme
'---------------------------------------
' Copyright (c) 2003 Ernesto De Spirito
' Adaptada por José Luis Gonzalez para funcion Excel
' www. latiumsoftware.com/es/index.php
' www. latiumsoftware.com/es/pascal/0049.php
' Determina si un número de CBU es válido. ARGENTINA
' La cadena que se pasa como parámetro debe estar formada
' por 22 dígitos numéricos (no se admiten guiones, barras
' ni espacios como parte de la cadena con el CBU).
' El dígito verificador está en las posiciones 8 y 22
' usando clave 10 con ponderador 9713
'--------------------------------------
Dim Peso(4) As Integer
Dim i As Integer
Dim j As Integer
Dim Suma As Integer
Dim digito As Integer
Peso(0) = 3
Peso(1) = 1
Peso(2) = 7
Peso(3) = 9
'
'Verifica longitud
If Len(Dato) <> 22 Then
ValidarCBU = False
Exit Function
End If
'
'Verifica que son todo números
For i = 1 To Len(Dato)
If Mid(Dato, i, 1) < "0" Or Mid(Dato, i, 1) > "9" Then
ValidarCBU = False
Exit Function
End If
Next i
'
'Verifica 8º Dígito
'
Suma = 0
j = 0
For i = 7 To 1 Step -1
Suma = Suma + (Mid(Dato, i, 1) * Peso(j Mod 4))
j = j + 1
Next i
digito = (10 - Suma Mod 10) Mod 10
If Val(Mid(Dato, 8, 1)) <> digito Then
ValidarCBU = False
Exit Function
End If
'
'Verifica 22º Dígito
'
Suma = 0
j = 0
For i = 21 To 9 Step -1
Suma = Suma + (Mid(Dato, i, 1) * Peso(j Mod 4))
j = j + 1
Next i
digito = (10 - Suma Mod 10) Mod 10
If Val(Mid(Dato, 22, 1)) <> digito Then
ValidarCBU = False
Exit Function
End If
ValidarCBU = True
End Function
Saludos