Construcción de macro

Le quedaría muy agradecido si me construyese la siguiente macro:
Nombre del libro "Recogida de datos", y la hoja en la que se va a desarrollar
la macro se llama "Datos" y pertenece al libro "Recogida de datos".
Lo que quiero que haga la macro es copiar el rango "A1:C1" y pegarlo la
primera vez que se ejecute la macro en el rango "E1:G1". La segunda vez
que se ejecute lo haga en el rango "E2:G2", la siguiente en el "E3:G3", la
siguiente en el "E4:G4", y así indefinidamente. Pero que lo haga sólo cada vez
que yo quiera ejecutarla y que cada vez sólo copie un renglón. De tal modo que
para que copie el siguiente renglón tenga que volver a dar la orden de ejecutarla,
es decir, que no lo haga ella de manera automática.
Como puede ver los datos de origen (datos a copiar) son siempre los mismos "A1:C1"
Y los de destino (los que la macro va pegando) son cada vez un renglón siguiente.
Y tanto los datos a copiar, como los datos a pegar están en la misma hoja"Datos".
Esperando recibir noticias suyas se despide. Jose

2 Respuestas

Respuesta
1
Si me envías tu archivo de excel con los datos y me explicas ahí, y yo te hago la macro que quieras ok, escríbeme a [email protected] y con copia a todoexpertos
Gracias jorgevb por tu pronta contestación y por tu amabilidad.En realidad me valdría con que me dijeras qué hay que escribir para que cada vez que copio el rango "A1:C1" se pegue en el renglón "E1:G1" y en la siguiente ejecución en el "E2:G2" y así sucesivamente. Es decir, que me indiques si es un bucle o qué otra instrucción habría que usar y cómo escribirla. El resto de la macro ya me arreglaría para hacerla.
Te lo agradecería mucho pues me sería de gran ayuda en mi trabajo.
Un saludo. Jose
Jose tengo algo parecido a lo que quieres, recién estoy viendo lo de tu macro, para este ejemplo lo que tienes que hacer es ir al Menu herramientas, Macro y grabar nueva macro, luego con el mouse te colocas sobre la celda A1 y seleccionas hasta la celda A3 luego clic derecho y opción copiar, luego te vas a la celda E1 y pones pegar, luego presionas el botón de stop en grabar macro.
Luego entras a herramientas y editas la macro la editas como esta acá, este ejemplo copia el contenido de la celda Ax:Ax a la celda Ex:Gx
donde por es la poción del row, voy a chequear sobre lo que me pides, espero que esto te pueda servir. Si logras mejorarla avisame.
Sub Copiar()
Dim x As Integer
'
' Copiar Macro
' Macro grabada el 15/10/2002 por Jorge Quispe
'
' Acceso directo: CTRL+a
'
x = ActiveCell.Row
Range("A" & x & ":C" & x).Select
'Range("A1:C1").Select
Selection.Copy
Range("E" & x).Select
ActiveSheet.Paste
End Sub
Jose ya esta tu macro
Este es el código pero estoy usando una celda extra para guardar el contador.
Sub Copiar()
Dim x As Integer '
' Copiar Macro
' Macro grabada el 15/10/2002 por Jorge Quispe
'
' Acceso directo: CTRL+a
'
Range("I" & 1).Select
c = ActiveCell.Value
y = c + 1
Range("I" & 1).Value = y
x = ActiveCell.Row
Range("A" & x & ":C" & x).Select
'Range("A1:C1").Select
Selection.Copy
Range("E" & y).Select
ActiveSheet.Paste
End Sub
I1 contiene el contador la primera vez debe estar en 1 así se incrementara para el cambio de fila.
Gracias Jorge por tu respuesta. Ya me ha dado la solución un compañero de la red y veo que es similar a la tuya y por lo tanto ambas son excelentes.
Se me pide que valore tu respuesta y lo voy a hacer con el calificativo de excelente.
Un cordial saludo. Jose
Respuesta
-1
Pues la verdad que lo que pides no creo que sea demasiado viable, al menos con macros, ya que no es esa su funcionalidad. Lo que quieres sería para realizarlo en Visual basic o con VBA para Excel tomando como origen la fuente de datos que pones en el primer rango de celdas. La ayuda de VBA Excel lo tienes en el CD del Office en la parte de ayuda de Excel, no se instala por defecto.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas