Copiar rango de datos y pegarlos uno a la vez

Hola, necesito ayuda para este asunto:
Que tal crear una macro que copie todo el rango de datos de un archivo de excel digamos de A1 a A100 y los guarde en la memoria.
Que al irme al archivo de neodata pegue un registro a la vez del rango que copio del archivo de excel. De la siguiente manera:
1. Estando en el archivo de neodata abro una ventana y pego el primer registro
2. Sin tener que regresar al archivo de excel, abro otra ventana en neodata y pego el segundo registro y así sucesivamente
3. Que de igual manera, la macro vaya pintando la celda que ya se pego en neodata para saber en que parte del pegado voy
¿Sera posible lograr esto?
Gracias de antemano

1 respuesta

Respuesta
1
soy v_344
Se me ocurrió algo que tal vez te pueda servir. Mira lo que hace el siguiente código para todas las celda desde A1 hasta la ultima celda con datos (en la columna A), es copiar la celda actualmente activa (A1 por ejemplo) y retarda el pasar a la celda A2 durante 10 segundos (puedes cambiarlo) esos 10 segundos te servirían para colocarte en la primer ventana de neodata y pegar el valor más reciente que se encuentra en el portapapeles (en este caso seria el valor de A1)... pasados los 10 segundos la celda A1 se pinta de amarillo y pasa a copiar la celda A2 ("tu no tendrías que salirte de neodata") y ahora el valor a pegar sera el valor de la celda A2 e igualmente tienes 10 segundos para colocarte en la segunda ventana y pegar el valor de la celda A2... ¿etc etc
como vez?... te paso el código
Dim celda As Range
For Each celda In Range("a1", Range("a65000").End(xlUp))celda.Copy
hora = Hour(Now())
minuto = Minute(Now())
segundo = Second(Now()) + 10
espera = TimeSerial(hora, minuto, segundo)
Application.Wait espera
With celda.Interior
.Pattern = xlSolid
.Color = 65535
End With
Next
Application.CutCopyMode = False
Si deseas salir del bucle antes de pegar todas las celda en la columna A regresas a excel y oprimas esc
salu2x!
Muchas gracias por tu interés V_344.
Fíjate que me marca un error de sintaxis en la fila
"For Each celda In Range("a1", Range("a65000").End(xlUp))celda.Copy"
¿Qué podrá ser?
Perdón lobo!...
Se me hace que copie mal el código
Lo de celda. Copy debe ir en el renglón de abajo... así:
Dim celda As Range
For Each celda In Range("a1", Range("a65000").End(xlUp))
celda.Copy
hora = Hour(Now())
minuto = Minute(Now())
segundo = Second(Now()) + 10
espera = TimeSerial(hora, minuto, segundo)
Application.Wait espera
With celda.Interior
.Pattern = xlSolid
.Color = 65535
End With
Next
Application.CutCopyMode = False
Saludos!... me comentas como te fue plis!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas