Hola Susana. ¿No puedes usar una Macro? No te preocupes, prueba con esta formula, suponiendo que el IBAN de la cuenta está en A2: =SI(EXTRAE(A2;13;2)=SI(11-RESIDUO(EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");1;1)*1+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");2;1)*2+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");3;1)*4+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");4;1)*8+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");5;1)*5+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");6;1)*10+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");7;1)*9+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");8;1)*7+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");9;1)*3+EXTRAE(TEXTO(EXTRAE(A2;5;4)*3&EXTRAE(A2;9;4);"0000000000");10;1)*6;11)=10;1;SI(11-RESIDUO(EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");1;1)*1+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");2;1)*2+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");3;1)*4+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");4;1)*8+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");5;1)*5+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");6;1)*10+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");7;1)*9+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");8;1)*7+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");9;1)*3+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");10;1)*6;11)=11;0;11-RESIDUO(EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");1;1)*1+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");2;1)*2+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");3;1)*4+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");4;1)*8+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");5;1)*5+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");6;1)*10+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");7;1)*9+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");8;1)*7+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");9;1)*3+EXTRAE(TEXTO(EXTRAE(A2;5;4)&EXTRAE(A2;9;4);"0000000000");10;1)*6;11)))&SI(11-RESIDUO(EXTRAE(EXTRAE(A2;15;10);1;1)*1+EXTRAE(EXTRAE(A2;15;10);2;1)*2+EXTRAE(EXTRAE(A2;15;10);3;1)*4+EXTRAE(EXTRAE(A2;15;10);4;1)*8+EXTRAE(EXTRAE(A2;15;10);5;1)*5+EXTRAE(EXTRAE(A2;15;10);6;1)*10+EXTRAE(EXTRAE(A2;15;10);7;1)*9+EXTRAE(EXTRAE(A2;15;10);8;1)*7+EXTRAE(EXTRAE(A2;15;10);9;1)*3+EXTRAE(EXTRAE(A2;15;10);10;1)*6;11)=10;1;SI(11-RESIDUO(EXTRAE(EXTRAE(A2;15;10);1;1)*1+EXTRAE(EXTRAE(A2;15;10);2;1)*2+EXTRAE(EXTRAE(A2;15;10);3;1)*4+EXTRAE(EXTRAE(A2;15;10);4;1)*8+EXTRAE(EXTRAE(A2;15;10);5;1)*5+EXTRAE(EXTRAE(A2;15;10);6;1)*10+EXTRAE(EXTRAE(A2;15;10);7;1)*9+EXTRAE(EXTRAE(A2;15;10);8;1)*7+EXTRAE(EXTRAE(A2;15;10);9;1)*3+EXTRAE(EXTRAE(A2;15;10);10;1)*6;11)=11;0;11-RESIDUO(EXTRAE(EXTRAE(A2;15;10);1;1)*1+EXTRAE(EXTRAE(A2;15;10);2;1)*2+EXTRAE(EXTRAE(A2;15;10);3;1)*4+EXTRAE(EXTRAE(A2;15;10);4;1)*8+EXTRAE(EXTRAE(A2;15;10);5;1)*5+EXTRAE(EXTRAE(A2;15;10);6;1)*10+EXTRAE(EXTRAE(A2;15;10);7;1)*9+EXTRAE(EXTRAE(A2;15;10);8;1)*7+EXTRAE(EXTRAE(A2;15;10);9;1)*3+EXTRAE(EXTRAE(A2;15;10);10;1)*6;11)));"Valido";"Erroneo") ¿Demasiado largo? Bueno, para los que no apreciáis la belleza de la jungla, puedes usar esta otra: =SI(EXTRAE(A2;13;2)=EXTRAE(12345678910;11-RESIDUO(SUMA(EXTRAE(A2;FILA(INDIRECTO("5:12"));1)*(EXTRAE(37498625;FILA(INDIRECTO("1:8"));1)+1));11);1)&EXTRAE(12345678910;11-RESIDUO(SUMA(EXTRAE(DERECHA(A2;10);FILA(INDIRECTO("1:10"));1)*(EXTRAE(0&137498625;FILA(INDIRECTO("1:10"));1)+1));11);1);"Valido";"No Valido") Esta última depende de la versión de tu excel deberás usar Control+Mayusculas+Intro. Saludos.
Por
torquemada , · publicado hace 16 horas 16 hr
Necesito consolidar 128 archivos al mes en una sola hoja de excel, me conseguí una macro, en donde me copia toda la tabla que necesito, que es la siguiente:
-->Sub ponernombre()
'Por.DAM
Set l1 = ThisWorkbook
Set h1 = l1.Sheets("concentrado")
h1.Cells.Clear
Application.ScreenUpdating = False
Set nav = CreateObject("shell.application")
carp = nav.browseforfolder(0, "SELECCIONA CARPETA", 0, "C:\trabajo").items.Item.Path
If carp = "" Then Exit Sub
carp = carp & "\"
ChDir carp
archi = Dir("*.xls*")
Do While archi <> ""
Workbooks.Open archi
uf = ActiveCell.SpecialCells(xlLastCell).Row
uc = ActiveCell.SpecialCells(xlLastCell).Column
u = h1.Range("A1").SpecialCells(xlLastCell).Row + 1
Range(Cells(6, 1), Cells(uf, uc)).Copy h1.Range("B" & u)
ActiveWorkbook.Close
archi = Dir()
Loop
MsgBox "Archivos concentrados", vbInformation, "UNIR ARCHIVOS EN UNA HOJA"
End Sub<---
Pero además de eso, necesito que me copie la celda B3 de cada archivo en la columna "A" hasta el último dato de cada tabla (Que está desde la columna B en adelante y cuyas extensiones en filas es variable), y abra recién el otro archivo. Todas las hojas de los libros se llaman "Hoja1" y siempre es la misma celda