Inicio > Microsoft Excel > jrgces > Macro eliminar filas y columnas ocultas

Macro eliminar filas y columnas ocultas

Experto:
Usuario:
Fecha: 07/08/2008
Valoración: (4,00 sobre 5) Categoría: Microsoft Excel
07/08/2008
javitopi, usuario preguntando en Microsoft Excel
Usuario
Buenos Dias,
Tengo un libro con muchas hojas, y cada hoja tiene una serie de filas o columnas ocultas, nunca en la misma posición.
El fin último es eliminar las filas y columnas ocultas de todo el libro excepto de dos o tres páginas.
Lo que pienso que necesito, si no me decís lo contrario, es una macro que se recorra las páginas del libro, excepto en las que no quiero que actue, detecte las filas y columnas que están ocultas, seleccionarlas, y a continuación las elimine, y así para todas las hojas del libro.
Espero ansiosamente vuestras respuestas.
Gracias a todos.
 
07/08/2008
javitopi, experto respondiendo en Microsoft Excel
Experto
Prueba con el siguiente código, en el que tendrás que sustituir "Hoja que no se desea tocar1" etc. con los nombres de las hojas que no quieres procesar.
 
De todas formas, dado que el código elimina filas y columnas, te aconsejo que lo pruebes en una copia del libro.
 
Sub EliminarFilasYColumnasOcultas()
    Dim wksH As Worksheet
    Dim intCol As Integer, lngRow As Long
     
    For Each wksH In ThisWorkbook.Worksheets
        
        If wksH.Name <> "Hoja que no se desea tocar1" _
           And wksH.Name <> "Hoja que no se desea tocar2" _
           And wksH.Name <> "Hoja que no se desea tocar3" Then
            
            For intCol = wksH.UsedRange.Columns.Count To 1 Step -1
                If wksH.Columns(intCol).Hidden Then wksH.Columns(intCol).Delete
            Next intCol
            
            For lngRow = wksH.UsedRange.Rows.Count To 1 Step -1
                If wksH.Rows(lngRow).Hidden Then wksH.Rows(lngRow).Delete
            Next lngRow
        End If
        
    Next wksH
        
    Set wksH = Nothing
End Sub
 
 
Saludos.
07/08/2008
javitopi, usuario preguntando en Microsoft Excel
Usuario
MUchas gracias por tu respuesta. Todavia no la he problado, pero creo que va a funcionar. Muchas gracias y un saludo.
Enlaces patrocinados