Macro que copie una fórmula en cada celda y en la misma celda la vuelva a pegar

Puede que pienses que estoy loco con la solicitud que te voy a hacer por que es un poco extraña, pero la verdad yo si sé por que la estoy solicitando je je.

DAM mi solicitud es la siguiente:

En las celdas "F7" ; "F9" ; "F11" y "F12" en cada una de ellas tengo una fórmula.

La macro que necesito debe hacer lo siguiente:

Copiar la fórmula que esta en "F7" y volverla a pegar en "F7", copiar la fórmula que esta en "F9" y volverla a pegar en "F9", copiar la fórmula que esta en "F11" y volverla a pegar en "F11" y copiar la fórmula que está en "F12" y volverla a pegar en "F12".

Como la hoja esta protegida, primero antes de hacer esas acciones, macro debe desproteger la hoja, el password es "0976342842" y cuando finalice la macro debe volver a proteger la hoja con la misma contraseña.

2 respuestas

Respuesta
2

Te anexo la macro, cambia hoja1 por el nombre de tu hoja.

Sub Copiar()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1")
    h1.Unprotect "0976342842"
    h1.[F7].Copy
    h1.[F7].PasteSpecial xlAll
    h1.[F9].Copy
    h1.[F9].PasteSpecial xlAll
    h1.[F11].Copy
    h1.[F11].PasteSpecial xlAll
    h1.[F12].Copy
    h1.[F12].PasteSpecial xlAll
    h1.Protect "0976342842"
End Sub

s a l u d o s

Respuesta
1

No me explico como esto pueda tener sentido... Pero bueno...

Sub Macro11()
'
    ActiveSheet. Unprotect ("0976342842")
    Range("F7"). Copy (Range("F7"))
    Range("F9"). Copy (Range("F9"))
    Range("F11"). Copy (Range("F11"))
    Range("F12"). Copy (Range("F12"))
    ActiveSheet.Protect Password:="0976342842", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Error en el método copy de la clase Range

No funcionó.

Sorry, mala mía. Quise ahorrar líneas de código y no chequee que funcionara.

Sub Macro11()
'
    ActiveSheet.Unprotect ("0976342842")
    Range("F7").Copy
    Range("F7").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("F9").Copy
    Range("F9").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("F11").Copy
    Range("F11").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("F12").Copy
    Range("F12").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveSheet.Protect Password:="0976342842", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas