Excel VBA es una herramienta muy poderosa que le permite copiar fórmulas mediante programación de una hoja a otra. En este artículo, le mostraremos cómo usar Excel VBA para copiar fórmulas a otra hoja.

Primero crearemos una macro simple que copiará una fórmula de una celda a otra celda en la misma hoja. Luego modificaremos la macro para que copie la fórmula en una hoja diferente.
Empezando
Cuando graba una macro, Excel generará automáticamente un código VBA que puede usar para replicar las acciones que grabó. También puede escribir código VBA manualmente para lograr los mismos resultados. En este artículo, le mostraremos cómo hacer ambas cosas.
Grabar una macro
Para grabar una macro, siga estos pasos:
1. Abra el libro de trabajo que contiene la hoja con las fórmulas que desea copiar.
2. Presione el botón "Grabar macro" en la pestaña "Desarrollador". Si no ve la pestaña "Desarrollador", haga clic aquí para saber cómo agregarla.
3. Ingrese un nombre para su macro y elija una tecla de atajo si lo desea.
4. Haga clic en "Aceptar".
5. Seleccione la celda con la fórmula que desea copiar.
6. Presione "Ctrl" + "C" para copiar la celda seleccionada.
7. Seleccione la celda donde desea pegar la fórmula copiada.
8. Presione "Ctrl" + "V" para pegar la fórmula copiada.
9. Presione el botón "Detener grabación" en la pestaña "Desarrollador".
¡Tu macro ya está lista para usar! Para ejecutarlo, simplemente presione la tecla de acceso directo que le asignó, o haga clic en el botón "Macros" en la pestaña "Desarrollador" y seleccione su macro de la lista.
Escritura manual de código VBA
También puede lograr los mismos resultados escribiendo unas pocas líneas de código VBA. Para hacer esto, siga estos pasos:
1. Abra el libro de trabajo que contiene la hoja con las fórmulas que desea copiar.
2. Presione "Alt" + "F11" para abrir el Editor de Visual Basic.
3. Haga clic en "Insertar" > "Módulo".
4. Introduzca el siguiente código en el módulo:
Sub Copiar Fórmula ()
Dim sourceRange As Range
Dim targetRange como rango
Establezca sourceRange = Range ("A1") 'Cambie A1 a su celda de fórmula
Establezca targetRange = Range ("B1") 'Cambie B1 a la celda de pegado deseada
Rangoobjetivo.Fórmula = RangoFuente.Fórmula
Finalizar sub
5. Presione "F5" para ejecutar el código.
¡Su fórmula ahora debería copiarse en la celda deseada!
Modificar la macro para copiar fórmulas a otra hoja
La macro que grabamos en la sección anterior solo copiará fórmulas dentro de la misma hoja. Sin embargo, puede modificarlo fácilmente para copiar fórmulas a otra hoja. Para hacer esto, siga estos pasos:
1. Abra el libro de trabajo que contiene la hoja con las fórmulas que desea copiar.
2. Presione "Alt" + "F11" para abrir el Editor de Visual Basic.
3. Haga doble clic en su macro en la lista del lado izquierdo de la pantalla. El código para su macro aparecerá en el lado derecho.
4. Busque la siguiente línea de código:
Establezca targetRange = Range ("B1") 'Cambie B1 a la celda de pegado deseada
5. Cambie “B1” a la celda en la otra hoja donde desea pegar la fórmula, usando este formato: SheetName!CellAddress. Por ejemplo, si desea pegar la fórmula en la celda B2 en una hoja llamada "Hoja2", cambiaría el código a esto:
Establecer targetRange = Hojas ("Hoja2"). Rango ("B2")
6. Presione "F5" para ejecutar el código. ¡Su fórmula ahora debería copiarse en la otra hoja!
Pensamientos finales
Después de leer este artículo, ahora debería saber cómo copiar fórmulas a otra hoja usando Excel VBA. Puede utilizar la macro grabada tal cual o modificarla para adaptarla a sus necesidades. Si desea obtener más información sobre Excel VBA, consulte nuestros otros artículos sobre el tema.
Este es el final del tutorial.