Código VBA para elegir el primer dato de una lista desplegable, copiar los datos en otra hoja y elegir el siguiente...

Agradezco alguien me pueda ayudar con el código para crear una macro en VBA que elija el primer dato de una lista desplegable, copie la información que de el se deriva, la pegue en otra hoja y vuelva a repetir el mismo procedimiento pero con el segundo item de la lista.

Hasta ahora logro que que la macro copie y pegue la información en orden, gracias a la función de referencias relativas de excel 2010, cuando yo elijo el dato de la lista desplegable. Pero creo que esto se puede automatizar con un código. Agradezco a los expertos que me ayuden con el tema.

1 Respuesta

Respuesta
1

H o l a:

Para completar la macro tienes que mencionar la siguiente información:

  1. En cuál celda está lista desplegable
  2. Cómo se llama la hoja en donde tienes la lista desplegable
  3. En cuáles celdas están los item de la lista
  4. Cómo se llama la hoja en dónde están los item
  5. Cuáles celdas se van a copiar
  6. Cómo se llama la hoja destino, siempre son las mismas celdas destino.
  7. Se deben copiar como valores.
  8. En cuáles celdas destino se van a copiar.

De preferencia pon un par de imágenes, una con la hoja origen y otra con la hoja destino; en ambas imágenes se deben apreciar las filas y las columnas de excel, así como los nombres de las hojas.

Sal u dos

Hola Dante, Gracias por la ayuda. Las respuestas a tus preguntas serían las siguientes:

1.En cuál celda está lista desplegable

R/. k4

2. Cómo se llama la hoja en donde tienes la lista desplegable

R/. DEF_ED_SIMP_Q

3. En cuáles celdas están los item de la lista

R/. $C$6:$C$39

4. Cómo se llama la hoja en dónde están los item

R/. DEF_ED_SIMP_Q

5. Cuáles celdas se van a copiar

R/. D47:AZ68 de la hoja "Visor1"

6. Cómo se llama la hoja destino, siempre son las mismas celdas destino.

R/. TdV2005-2014. La idea es que por cada "departamento"de la lista desplegable, me copie las tres tablas de vida: Ambos Sexos, Hombres y Mujeres, en orden descendente, de manera que al finalizar toda la lista, vaya al inicio de la hoja y comience nuevamente al lado con el siguiente año 2006.

7. Se deben copiar como valores.

R/. Si se puede copiar como valores.

8. En cuáles celdas destino se van a copiar.

R/. Igual que con la la hoja de destino, lo importante es que pueda identificar las 3 tablas por departamento y año.

*Esta imagen es de donde se encuentra las listas desplegables por Departamento y Año

*En estas imagenes se muestra las tres tablas a copiar y un acercamiento a una tabla.

*Esta última muestra la hoja de destino.

Gracias Dante y hasta pronto.

Oscar C.

H o l a:

No me queda claro las celdas destino.

La secuencia es la siguiente:

  1. Pongo el primer dato de la lista de item
  2. Copio las celdas
  3. Las pego en la hoja destino en la celda A1.
  4. Pongo el segundo dato de la lista de item+
  5. Copio las celdas
  6. Las pego en la hoja destino en la celda A1, es decir, ¿voy a sobreescribir el pegado anterior?

Hola, la idea es copiar en orden descendente en la hoja destino. Por ejemplo. Elijo Antioquia, copia la información de la hoja visor1, la pega en la hoja destino en A1 y me ubicó una fila o dos por debajo de la información pegada. Es decir A23 aprox. Posteriormente, vuelvo a lista desplegable y elijo el segundo ítem, es decir, Atlántico y repito el proceso hasta terminar toda lista...

H o l a:

Te anexo la macro

Sub CopiarDatos()
'Por.Dante Amor
    Set h1 = Sheets("DEF_ED_SIMP_Q")
    Set h2 = Sheets("Visor1")
    Set h3 = Sheets("TdV2005-2014")
    fila = 1
    For i = 6 To 39
        h1.Range("K4") = h1.Cells(i, "C")
        h2.Range("D47:AZ68").Copy
        h3.Range("A" & fila).PasteSpecial xlValues
        fila = fila + 23
    Next
    MsgBox "Fin"
End Sub

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Es exactamente lo que necesitaba hacer. Gracias Dante.

Al final de mi respuesta puedes valorar con “Votar” o con “Excelente”, si requieres de más información puedes solicitarla, de lo contrario, podrías cambiar la valoración. 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas