[Mejorar] Macro para copiar rango de celdas con formato en otro libro

Soy nuevo en VBA, mi problema es que no se como hacer que mi macro solo me copie el rango de una tabla que seria A1:G1 ya que me copia toda la tabla :/ ... Otro problema es que no se como hacer para que la celda F1-G1 pasen con su formato de Fecha ya que con este macro solo me copia números cuando deberían ser fechas...

De antemano agradezco su ayuda...

Sub update()
'Definir objetos a utilizar
Dim wbDestino As Workbook, _
    wsOrigen As Excel.Worksheet, _
    wsDestino As Excel.Worksheet, _
    rngOrigen As Excel.Range, _
    rngDestino As Excel.Range
'Indicar el libro de Excel destino
Set wbDestino = Workbooks.Open(ActiveWorkbook.Path & "\destino1.xlsx")
'Activar este libro
ThisWorkbook.Activate
'Indicar las hojas de origen y destino
Set wsOrigen = Worksheets("Origen")
Set wsDestino = wbDestino.Worksheets("PPC")
'Indicar la celda de origen y destino
Const celdaOrigen = "A1:G1"
Const celdaDestino = "A1"
'Inicializar los rangos de origen y destino
Set rngOrigen = wsOrigen.Range(celdaOrigen)
Set rngDestino = wsDestino.Range(celdaDestino)
'Seleccionar rango de celdas origen
rngOrigen.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
'Pegar datos en celda destino
rngDestino.PasteSpecial xlPasteValues
Application.CutCopyMode = False
'Guardar y cerrar el libro de Excel destino
wbDestino.Save
End Sub

3 respuestas

Respuesta
1

[email protected] si aún no has podido soluciónarlo

Respuesta
1

Si solo quieres copiar una fila esta es la macro que ocupas

Sub copiar()
Worksheets("hoja1").Range("a1:g1").Copy
Worksheets("hoja2").Range("a1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End Sub

Te copiara la instrucción a la hoja2 respetando los formatos de la hoja1, es decir f1-g1 si son fechas así las pegara en la hoja2

Respuesta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas