Cómo copiar una fila oculta y pegarla en un área visible con una macro?

Estimad@s, necesito implementar una macro en excel para copiar una fila que está oculta y luego pegar esa fila en el área visible de la hoja al estar posicionado en cualquier celda... Es decir estoy en el área visible de la hoja, en cualquier celda, aplico la macro y se pega una fila que estaba oculta (pero en la misma hoja).

1 respuesta

Respuesta
1

Entra al Editor de macros, inserta un módulo y allí copia este código ajustando el número de la fila oculta (en mi ejemplo es 4)

Sub copiaFilaOculta()
'x Elsamatilde
'la fila oculta es la 4 y se pega en la fila de la celda activa
    Rows("4:4").Copy Destination:=Range("A" & ActiveCell.Row)
    'la coloca como visible
    ActiveCell.EntireRow.Hidden = False
    'quita el modo de copiar/pegar
    Application.CutCopyMode = False
End Sub

Para ejecutarlo podrías crear un atajo de teclado, colocar un botón en tu hoja o directamente desde el menú Desarrollador (o Programador), Macros.

Si necesitas ayuda con este tema, encontrarás las explicaciones en la sección Macros de mi sitio.

Sdos. Y no olvides valorar la respuesta (con Excelente o buena).

Elsa

Excelente!

Pero me di cuenta de un detalle en mi pregunta, en vez de pegar es insertar la fila copiada...

me ayudas?

disculpa por el error.

Saludos!

JM

No mencionas si debe insertarse por encima o debajo de la celda activa.

Así sería la macro ajustada que insertará la fila por encima.

Sub copiaFilaOculta()
'x Elsamatilde
'la fila oculta es la 4 y se pega x encima de la celda activa
    Rows("4:4").Copy
    Range("A" & ActiveCell.Row).Insert
    'la coloca como visible
    ActiveCell.EntireRow.Hidden = False
    'quita el modo de copiar/pegar
    Application.CutCopyMode = False
End Sub

Si necesitas que se inserte por debajo de la celda activa, solo reemplaza estas 2 instrucciones:

Range("A" & ActiveCell.Row + 1).Insert
'la coloca como visible
ActiveCell.Offset(1, 0).EntireRow.Hidden = False

Sdos. Y no olvides valorar la respuesta (con Excelente o buena).

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas