Control Errores Excel
Hola!
Estoy haciendo una macro que abre 17 ficheros, filtra en una columna el mensaje Inconsistencia y selecciona las celdas que han dado resultado positivo. Las copia y las pega al libro donde se ejecuto la macro. El asunto es que a veces ciertos libros no poseen ningún registro (filas) con ese mensaje de error. Me sale un error 1004. Necesito una solución, porque por más que lo he intentado con On Error GoTo e incluso con la solución que veréis abajo, no lo consigo.
For libro = 1 To 9
Application.CutCopyMode = True
Select Case libro
Case Is < 5
x = 10
Case Is > 4 < 9
x = 14
End Select
Workbooks.Open (ActiveWorkbook.Path + "\" + Ficheros(libro))
ActiveWorkbook.Sheets(5).Select
criterio = "Inconsistencia Clar*"
Selection.AutoFilter x, criterio
Rows(1).Hidden = True
filas = Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Count
If filas = 0 Then
If mensajeFinal = "" Then
mensajeFinal = "No se encontraron inconsistencias para los libros:"
End If
mensajeFinal = mensajeFinal + "\n Ficheros(libro)"
Else
Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Select
Selection.Copy
Workbooks("Book1.xls").Activate
Sheets(1).Select
Range("A65500").End(xlUp).Select
ActiveCell.Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ClearClipboard_NO_EJECUTAR
End If
Workbooks(Ficheros(libro)).Close (False)
libro = libro + 1
Next libro
Gracias de antemano
Estoy haciendo una macro que abre 17 ficheros, filtra en una columna el mensaje Inconsistencia y selecciona las celdas que han dado resultado positivo. Las copia y las pega al libro donde se ejecuto la macro. El asunto es que a veces ciertos libros no poseen ningún registro (filas) con ese mensaje de error. Me sale un error 1004. Necesito una solución, porque por más que lo he intentado con On Error GoTo e incluso con la solución que veréis abajo, no lo consigo.
For libro = 1 To 9
Application.CutCopyMode = True
Select Case libro
Case Is < 5
x = 10
Case Is > 4 < 9
x = 14
End Select
Workbooks.Open (ActiveWorkbook.Path + "\" + Ficheros(libro))
ActiveWorkbook.Sheets(5).Select
criterio = "Inconsistencia Clar*"
Selection.AutoFilter x, criterio
Rows(1).Hidden = True
filas = Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Count
If filas = 0 Then
If mensajeFinal = "" Then
mensajeFinal = "No se encontraron inconsistencias para los libros:"
End If
mensajeFinal = mensajeFinal + "\n Ficheros(libro)"
Else
Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Select
Selection.Copy
Workbooks("Book1.xls").Activate
Sheets(1).Select
Range("A65500").End(xlUp).Select
ActiveCell.Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ClearClipboard_NO_EJECUTAR
End If
Workbooks(Ficheros(libro)).Close (False)
libro = libro + 1
Next libro
Gracias de antemano
1 Respuesta
Respuesta de parmijo
1