Te adjunto varios ejemplos de macros. Si esto no te ayuda dame mas datos para poder ayudarte.
El primer caso se trata de insertar solo una celda (“G3”) de la (“Hoja1”) y copiar los datos de (“J5”) de la (“Hoja2”)
Sheets("Hoja1").Range("G3").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("Hoja1").Cells(3, "G").Value = Sheets("Hoja2").Cells(5, "J").Value
El segundo caso se trata de insertar un rango en una fila.
Sheets("Hoja1").Range("A8").EntireRow.Insert
Sheets("Hoja1").Range("A8:G8").Value = Sheets("Hoja2").Range("B7:H7").Value
Como tercer y ultimo ejemplo:
Copiar datos de la hoja “PEPE” a la hoja “JUAN”
(DESTINO) HOJA “JUAN” FILA 10 COLUMNA A = (FUENTE) HOJA = “PEPE” FILA 2 COLUMNA B
Para cada celda una línea independiente cuando no son consecutivas
Esto seria:
Sheets(“JUAN”).Cells(10, “A”).Value = Sheets(“PEPE”).Cells(2, “B”).Value
Celdas consecutivas:
Sheets(“JUAN”).Range(“A2:C2”).Value = Sheets(“PEPE”).Range(“D10:F10”).Value
El rango de la fuente tiene que contener el mismo nº de celdas que el destino y en
el mismo sentido.
Te recomiendo que practiques en una hoja en blanco. No habría que decir que tendrías que cambiar los valores entre paréntesis y comillas y poner los reales de tus hojas.