Como limpiar varias hoja de un libro de Excel, de forma que me deje solo los encabezados

Tengo un libro de excel con 12 hojas pero 9 de ellas tienen el encabezado en la línea 2 y otras en la 3, y quiero vaciar el libro de forma que los encabezados no me los borre, es para a continuación ejecutar una macro que me pega otros datos

2 respuestas

Respuesta
1

Te anexo la macro, agrega los nombres de las hojas con encabezado en fila 2 y en fila 3.

Si alguna hoja no quieres que se borren datos, simplemente no la agregues en ninguna de las 2 listas.

Sub Limpiar_Hojas()
'Por.Dante Amor
    For Each h In Sheets
        Select Case h.Name
            'hojas con encabezado en fila 2
            Case "Hoja1", "Hoja2", "Hoja3"  'agregar las demás hojas entre comillas y separadas por coma
                h.Rows("3:" & Rows.Count).ClearContents
            'hojas con encabezado en fila 3
            Case "Datos", "Reporte", "Resumen"
                h.Rows("4:" & Rows.Count).ClearContents
        End Select
    Next
    MsgBox "Limpieza terminada"
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

¡Gracias! 

Genial!

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. 
Respuesta
-1

Trata con esta macro solo cambia B2 por la celda donde comienzan tus datos.

Sub borrar()

For Each hoja In Worksheets
Set h = Worksheets(hoja.Name)
Set datos = h.Range("b2").CurrentRegion

With datos
filas = .Rows.Count
If filas = 1 Then End
contar = WorksheetFunction.CountBlank(.Rows(1))
If contar = 0 Then .Rows(2).Resize(filas - 1).Clear
If contar > 0 Then .Rows(3).Resize(filas - 1).Clear
End With
Next
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas