Pegar datos en tabla excel desde otra tabla excel en VBA

Como puedo pegar datos en valores de una tabla excel (digamos Tabla1) a otra (Tabla2). El problema que tengo es que por la cantidad de datos se tarda años al pegar los valores (son como 30,000 datos). Descubrí que si pego los valores a un notepad, los copio de nuevo (esta vez desde el notepad) y los pego a la tabla es muchísimo mas rápido. Me imagino tiene que ver con el formato Unicode de los datos en el archivo Notepad...

set wbDest = Workbooks ("Libro Destino")

set wsDest = wbDest.Worksheets ("Hoja Destino")

set Dest = wsDest.Range ("Table2[Dest]")

      Range ("Table1[Origin]").copy

      Dest.PasteSpecial xlPasteValues

     Application.CutCopyMode = False

¿Hay alguna forma de copiar y pegar los valores con formato notepad (Unicode)?. ¿Algún comando diferente a xlPasteValues?

1 respuesta

Respuesta

En la macro que dices que tarda tanto, has incluido al principio

Application.ScreenUpdating = False

y al final:

Application.ScreenUpdating = True

Prueba y me cuentas, se mejora mucho el tiempo de ejecución

Hola!

Si, si esta incluido... =/ 

Gracias por la ayuda!

Has probado en vez de copiar-pegar la tabla, ¿copiar-pegar un rango?

Me refiero a cambiar Range ("Table2[Dest]") por Range("A1:Z30000") por ejemplo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas