Macro que copie el rango al copiar e insertar columnas de una hoja a otra.
En resumen quiero ejecutar una macroX en la hoja3, ejecutada la anterior, ejecutar la macro nombrar para darle nombre al rango e5:j12 de la hoja1, posterior a esto ejecutar la macro4 que me permite copia las columnas de E:J de la hoja1 y las inserta en la columna C de la hoja2, además, cuando se copie e inserte la información me traspase también el rango e5:j12 de la hoja1 a la hoja2.
En detalle es lo diguiente:
Desde la hoja3 ejecuto una macroX, al ejecutarse esta macro, desde la misma hoja se debe ejecutar la siguiente macro:
Sub nombrar() valor = Range("a1") Worksheets("hoja1").Range("e5:j12").Name = valor End Sub
Cuando activo esta macro, el rango e5:j12 de la hoja1 toma el nombre de la celda A1 de la hoja3. Esta macro permite que el nombre del rango e5:j12 de la hoja1 tome el valor de la celda A1 de la hoja desde donde se ejecuta la macro (hoja3 en este caso). Esto me permite tener diferentes nombres para el rango e5:j12 en función de la celda A1 de la hoja3.
Una vez ejecutada la macro anterior, se ejecuta la siguiente macro:
Sub Macro4()
'esta macro copia las columnas de E:J de una hoja y las inserta en la columna C de otra hoja
Sheets("hoja1").Columns("E:J").Copy
Sheets("hoja2").Select
Columns("C:C").Select
Selection.Insert Shift:=xlToRight
End Sub
Sin embargo, cuando se ejecuta la Macro4 no se pega el rango e5:j12 en la columna C de la hoja2.
Considerando lo anterior, tengo una macro que me transfiere el rango de una hoja a otra, creo que el código que permite esto es:
Worksheets("hoja1").Copy After:=Sheets(ActiveWorkbook.Sheets.Count)
En este caso, el código lo utilizó para copiar el contenido completo de una hoja1 y transferirlo a otra, en la hoja1, con las celdas A1 Y A2 tengo un rango nombrado y este rango puede ser transferido con su nombre a otras hojas. Quiza este código pueda ser utilizado en la macro4 aunque nose como realizarlo.