Access - codigo bancario IBAN

 
Vista:

codigo bancario IBAN

Publicado por joaquin fernandez (5 intervenciones) el 06/12/2013 19:07:31
Hola, ¿alguien me podría indicar como convertir el código bancario BBAN en IBAN, en un modulo en Acces?

gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

codigo bancario IBAN

Publicado por jose (830 intervenciones) el 08/12/2013 13:38:01
http://queaprendemoshoy.com/como-se-interpretan-los-digitos-de-ccc-y-el-iban/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por jose (830 intervenciones) el 08/12/2013 13:38:39
http://www.finanzasybanca.com/iberfinanzas/index.php/C/Codigo-Internacional-de-Cuenta-Bancaria-IBAN.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por jose (830 intervenciones) el 08/12/2013 13:50:01
Saludos Joaquin

Nos dan la forma de hacerlo pero a la hora de dividir 26 digitos /97 nos da error porque access no es capaz de hacer ésta division con numeros tan largos

1234 1234 12 1234567890 142800 /97 --- no hay forma de dividirlo da eror porque en visual basic access la maxima longitud que admite es 10 digitos .

cual es la solucion dividirlo, pero en 4 trozos 10, 6, 6 y 4

1234 1234 12 mod 97 por ejemplo resto 26
26 & 123456 mod 97 por ejemplo 15
15 & 7890 14 mod 97 por ejemplo 68
68 & 2800 mod 97 -------------------este es el resto del 1ue descontamos 98


jose manuel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por 2pl (16 intervenciones) el 08/12/2013 16:45:54
Copiate estas funciones en un módulo
'1. Verificar si un número de cuenta IBAN (cuenta bancaria internacional) perteneciente a un banco español,
' es correcta, es decir cumple los estándares de los dígitos de control de la misma.
'La función devuelve el caracter 1 (uno) si es válida, cualquier otro valor, si no lo es.
Function VerificarIBAN(IBAN As String) As String
VerificarIBAN = CalcularModulo(Mid(IBAN, 5) & "1428" & Mid(IBAN, 3, 2), 97)
End Function

'2. Devuelve el número de la cuenta IBAN (24 caracteres) pasándole el número de la cuenta de la cuenta bancaria española (20 caracteres):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Function HallarIBAN(CCC As String) As String
   Dim DigControl As String
 
   DigControl = 98 - CalcularModulo(CCC & "142800", 97)
 
   HallarIBAN = "ES" & Format(DigControl, "00") & CCC
End Function
 
Function CalcularModulo(Numero As String, Modulo As Integer) As String
   Dim Dividendo As Long
   Dim VoyPor As Integer
   Dim Resto As Integer
 
   VoyPor = 1
 
   Do While VoyPor <= Len(Numero)
      Dividendo = Resto & Mid(Numero, VoyPor, 1)
      Resto = Dividendo Mod Modulo
      VoyPor = VoyPor + 1
   Loop
   CalcularModulo = Resto
End Function

+++++ la llamada seria así
HallarIban([N00BANC] & [N00SUCU] & [N00CUEN])
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por JOSE (830 intervenciones) el 08/12/2013 18:07:26
SALUDOS A JOAQUIN Y A 2PL

2pl ha sido buena la idea de dividir los 26 digitos y sacar el resto de uno en uno y no en 4 tramos como hacía yo

en base a ello he creado otra forma de hacerlo - crear un boton y en el evento al hacer clic poner :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim A As String
 
A = "3016 0153 41 1234567890 142800"
 
A = Replace(A, " ", "")
 
For N = 1 To Len(A)
DIVIDENDO = RESTO & Mid(A, N, 1)
RESTO = DIVIDENDO Mod 97
Next N
 
IBAN = "IBAN" & " " & "ES" & Format$((98 - RESTO), "00") & " "
 
For N = 1 To Len(A)-6  Step 4
IBAN = IBAN & " " & Mid(A, N, 4)
Next N
 
MsgBox "CCC  " & left$( A ,20) & "          " & IBAN




1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

codigo bancario IBAN

Publicado por Norberto (753 intervenciones) el 09/12/2013 15:42:59
Hola.

¡Ojo! El cálculo de los dígitos de control del IBAN es (98 - Número Mod 97) Mod 97. (Ver http://code.google.com/p/checkdigits/wiki/CheckDigitSystems)

La diferendia afecta a dos de los 97 resultados:

1
2
3
4
5
6
7
8
9
10
11
12
Resto   98-Resto   Nuevo Resto
0         98         1*
1         97         0*
2         96        96
3         95        95
4         94        94
....
....
93         5         5
94         4         4
95         3         3
96         2         2

Un saludo,

Nor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por jose (830 intervenciones) el 09/12/2013 18:07:09
saludos Norberto

El ingles no es mi fuerte, sin embargo no veo que haya problema con el código , esta va de 1 a 98 , excluyendo el 0



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
resto	(98- resto)codigo
98	0	98
98	1	97
98	2	96
98	3	95
98	4	94
98	5	93
98	6	92
98	7	91
98	8	90
98	9	89
98	10	88
98	11	87
98	12	86
98	13	85
98	14	84
98	15	83
98	16	82
98	17	81
98	18	80
98	19	79
98	20	78
98	21	77
98	22	76
98	23	75
98	24	74
98	25	73
98	26	72
98	27	71
98	28	70
98	29	69
98	30	68
98	31	67
98	32	66
98	33	65
98	34	64
98	35	63
98	36	62
98	37	61
98	38	60
98	39	59
98	40	58
98	41	57
98	42	56
98	43	55
98	44	54
98	45	53
98	46	52
98	47	51
98	48	50
98	49	49
98	50	48
98	51	47
98	52	46
98	53	45
98	54	44
98	55	43
98	56	42
98	57	41
98	58	40
98	59	39
98	60	38
98	61	37
98	62	36
98	63	35
98	64	34
98	65	33
98	66	32
98	67	31
98	68	30
98	69	29
98	70	28
98	71	27
98	72	26
98	73	25
98	74	24
98	75	23
98	76	22
98	77	21
98	78	20
98	79	19
98	80	18
98	81	17
98	82	16
98	83	15
98	84	14
98	85	13
98	86	12
98	87	11
98	88	10
98	89	9
98	90	8
98	91	7
98	92	6
98	93	5
98	94	4
98	95	3
98	96	2
98	97	1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

codigo bancario IBAN

Publicado por Norberto (753 intervenciones) el 10/12/2013 09:18:56
Hola de nuevo.

Según lo que he podido encontrar sobre la norma ISO 7064 Mod 97-10 el cálculo de los dígitos de control es (98 - Número Mod 97) Mod 97. Si sólo se hace 98 - Número Mod 97 el resultado va de 2 a 98 (en tu ejemplo sobra la última línea ya que el resto de algo entre 97 nunca dará más de 96) y si se hace el cálculo completo irá de 0 a 96.

No obstante acabo de genear una serie de números aleatorios de cuenta hasta que me daba 00 y 01 como restos, según mi cálculo, y los he comprobado en dos sitios (es.ibancalculator.com y www.unicaja.es) y da como resultado 98 y 97 respectivamente, con lo que coincide con el cálculo propuesto por 2pl y Jose, lo cual me deja descolocado. En el cuadernillo Órdenes en formato ISO 20022 para emisión de Adeudos Directos SEPA Esquema Básico hace referencia a la web http://www.iso.org/iso/Iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=31531 para el cálculo de los dígitos de control. En ella tienes que abonar unos módicos 80 francos suizos para descargarte el documento.

Si alguien tiene más información al respecto, le agradecería que la posteara. Yo por mi parte, seguiré buscando.

Un saludo,

Nor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por Francisco González (2 intervenciones) el 15/03/2014 12:48:16
Hola:

Ya se que contesto a un post bastante antiguo, pero por si le es útil a alguien, aquí indican el cálculo del IBAN:
Digitos control IBAN = 98 - (CCC Mod 97)

https://portal.kutxabank.es/cs/Satellite?blobcol=urldata&blobheader=application%2Fpdf&blobheadername1=Expires&blobheadername2=content-type&blobheadername3=MDT-Type&blobheadername4=Content-disposition&blobheadervalue1=Thu%2C+10+Dec+2020+16%3A00%3A00+GMT&blobheadervalue2=application%2Fpdf&blobheadervalue3=abinary%3Bcharset%3DUTF-8&blobheadervalue4=inline%3B+filename%3DC%C3%A1lculo+de+IBAN.pdf&blobkey=id&blobtable=MungoBlobs&blobwhere=1311844840805&ssbinary=true

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por jose (830 intervenciones) el 15/03/2014 13:03:57
saludos FRANCISCO

ESTO que pones en tu post no es exactamente así

Digitos control IBAN = 98 - (CCC Mod 97)


es

Digitos control IBAN = 98 - (val ((CCC & "142800")) Mod 97)

pero como resulta un número muy largo para dividir vb no lo hace, sin embargo en Java si se puede hacer
y por ello hacemos la division por partes (por cada digito)

[code]
Dim A As String
A = "3016 0153 41 1234567890 142800"
A = Replace(A, " ", "") : rem quitamos todos los espacios
For N = 1 To Len(A) : rem recorremos todo el extring numero a numero y le vamos aladiento al resto anterior
DIVIDENDO = RESTO & Mid(A, N, 1)
RESTO = DIVIDENDO Mod 97
Next N

IBAN = "IBAN" & " " & "ES" & Format$((98 - RESTO), "00") & " "

For N = 1 To Len(A)-6 Step 4
IBAN = IBAN & " " & Mid(A, N, 4)
Next N
MsgBox "CCC " & left$( A ,20) & " " & IBAN [

/code]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por Francisco Gonzalez (2 intervenciones) el 15/03/2014 22:53:23
Gracias por tu comentario...
No fui suficientmente preciso. Solo quería indicar que según el documento que encontré, no hay que volver a hacer el Mod 97 de 98-(CCC&142800 Mod 97)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por jose (830 intervenciones) el 11/12/2013 10:37:51
en los foros de visual basic

http://www.lawebdelprogramador.com/foros/Visual_Basic/1409866-Calculo_IBAN.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por Tomas (1 intervención) el 20/01/2014 21:39:34
Hola, yo estoy intentando calcular el identificador del acreedor por ejemplo para el modelo sepa y no hay manera me sale un numero de unos 16 digitos a dividir por 97 y luego a 98 le restamos el resto de la división pero me sale erroneo.

He intentado hacer lo que comentan por aqui de partirlo en 4 bloques pero algo hago mal, alguien me ayuda??,.


GRACIAS.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por joaquin fernandez (5 intervenciones) el 20/01/2014 23:46:54
prueba esto a mi me funciona


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
' Esta función devolverá el Código IBAN de la cuenta, pero OJO!!!
' sólo sirve para ESPAÑA, ya q sólo tengo información de ES=(E = 14, S= 28)
Dim IB         As Variant
Dim DigControl As String
Dim Resto        As Variant
Dim cociente    As Variant
 
 
 
' Le paso 20 dígitos 0012 0345 0300 0006 7890
IB = Me.[CUENTA BANCO]
 
' Le añade a la cola 0012 0345 0300 0006 7890 142800
IB = IB & "142800"
 
' Aquí me peta, el error es: Desbordamiento...
cociente = CDec(IB) / 97
 
Resto = IB - (Int(cociente) * 97)
 
' Si todo ha ido bien, DigControl es 7
DigControl = CStr(98 - Resto)
 
' Si DigControl SÓLO es de un dígito, anteponer un 0 para que sea 07
If Len(Trim(DigControl)) = 1 Then DigControl = "0" & DigControl
 
' IBAN = ES + 07 + 0012 0345 0300 0006 7890
IB = "ES" & DigControl & Me.[CUENTA BANCO]
 
' La función devolverá: ES07 0012 0345 0300 0006 7890(por supuesto sin espacios...)
Me.IBAN = IB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por eric (1 intervención) el 11/03/2014 13:18:11
Buenas, queria pediros ayuda ya que intento que al poner el ccc me haga el IBAN, pero no me da resultado... no se si estoy haciendo algo mal, ya que soy bastante novatillo en esto y a ver si me podriíais ayudar, gracias.

1º Lo que hago es pinchar en ccc que lo tengo en modo formulario y poner en "eventos" " despues de actualizar" un "codigo" de visual basic como el que tenias arriba mencionado de la siguiente forma.

Private Sub CCC_AfterUpdate()

End Sub

Function HallarIBAN(CCC As String) As String
Dim DigControl As String

DigControl = 98 - CalcularModulo(CCC & "142800", 97)

HallarIBAN = "ES" & Format(DigControl, "00") & CCC
End Function

Function CalcularModulo(Numero As String, Modulo As Integer) As String
Dim Dividendo As Long
Dim VoyPor As Integer
Dim Resto As Integer

VoyPor = 1

Do While VoyPor <= Len(Numero)
Dividendo = Resto & Mid(Numero, VoyPor, 1)
Resto = Dividendo Mod Modulo
VoyPor = VoyPor + 1
Loop
CalcularModulo = Resto
End Function


Pero a la hora de modificar el numero de cuenta de cualquier cliente no me modifica el IBAN como si no hiciese nada el codigo que e puesto. gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

codigo bancario IBAN

Publicado por rBcn (1 intervención) el 14/05/2014 20:32:22
Buenas a todos,

os dejo la tabla de valores por letras por si sirve de ayuda. Lo facil ya sabemos ES ...

dejo link de donde lo encontre con Excel con todas sus formulas.

https://drive.google.com/file/d/0Bx0Ehu4EXV2JRXRDcDB1eVgtbVE/edit?usp=sharing

A 10
B 11
C 12
D 13
E 14
F 15
G 16
H 17
I 18
J 19
K 20
L 21
M 22
N 23
O 24
P 25
Q 26
R 27
S 28
T 29
U 30
V 31
W 32
X 33
Y 34
Z 35


saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar