Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Macro para copiar datos de una hoja a otra en Excel

| 1 comentario

Puedes utilizar el siguiente código VBA (Visual Basic for Applications) para crear una macro que copie datos de una hoja a otra en Excel. Asegúrate de seguir estos pasos:

1. Presiona `Alt + F11` para abrir el Editor de VBA en Excel.
2. En el Editor de VBA, selecciona `Insertar` y luego elige `Módulo` para agregar un nuevo módulo.
3. Copia y pega el siguiente código en el módulo:

Sub CopiarDatos()
' Define las hojas de origen y destino
Dim hojaOrigen As Worksheet
Dim hojaDestino As Worksheet
Set hojaOrigen = ThisWorkbook.Sheets("NombreHojaOrigen")
Set hojaDestino = ThisWorkbook.Sheets("NombreHojaDestino") destino
' Define el rango de datos que deseas copiar
Dim rangoOrigen As Range
Set rangoOrigen = hojaOrigen.Range("A1:D10") ' Reemplaza "A1:D10" con el rango a copiar
' Define el rango de destino
Dim rangoDestino As Range
Set rangoDestino = hojaDestino.Range("A1") ' Reemplaza "A1" con la celda de destino
' Copia los datos de la hoja de origen a la hoja de destino
rangoOrigen.Copy Destination:=rangoDestino
End Sub

Ejecuta la macro presionando `F5` o cerrando el Editor de VBA y ejecutándola desde la hoja de Excel.

 

Este código básico copiará los datos desde el rango de la hoja de origen al rango de la hoja de destino.  Recuerda que, al ejecutar la macro, los datos en la hoja de destino se sobrescribirán si ya hay datos en el rango de destino especificado.

 

VBA para copiar a una nueva hoja

Aquí tienes un ejemplo de una macro en VBA para copiar una hoja completa a otra en Excel:

Sub CopiarHojaCompleta()
' Define las hojas de origen y destino
Dim hojaOrigen As Worksheet
Dim hojaDestino As Worksheet
Set hojaOrigen = ThisWorkbook.Sheets("NombreHojaOrigen")
Set hojaDestino = ThisWorkbook.Sheets("NombreHojaDestino")

' Copia la hoja completa
hojaOrigen.Copy After:=hojaDestino

' Cambia el nombre de la hoja recién creada (opcional)
hojaDestino.Next.Name = "NuevaHojaDestino"

End Sub

puedes hacer los siguientes ajustes:

1. Reemplaza "NombreHojaOrigen" y "NombreHojaDestino" con los nombres reales de las hojas de origen y destino.
2. Puedes cambiar el nombre de la hoja recién creada ajustando el código: hojaDestino.Next.Name

Ejecuta la macro presionando F5 o cierra el Editor de VBA y ejecútala desde la hoja de Excel. Este código copiará la hoja completa de la hoja de origen a la hoja de destino.

Un comentario

  1. Buena explicacion

Deja una respuesta

Los campos requeridos estan marcados con *.