Buscar y copiar de una celda a otra

Que tal expertos, otra vez yo je je, tengo una pregunta espero me puedan ayudar.

Tengo una lista de datos y me gustaría copiar las lineas siempre y cuando cumpla la condición, que sería:

El dato que esta en toda la columna "G" sea igual a el dato que esta en la columna "I", si lo encuentra que copie toda esa linea que de la columna "G", si no la encuentra que no haga nada espero me puedan ayudar.

El listado siempre varia.

1 respuesta

Respuesta
1

¿Y a dónde se copiaría toda la línea?

a otra hoja es que aun no tengo definido pero si seria a otra hoja gracias

Sigue las Instrucciones para un botón y ejecutar la macro
1. Abre tu libro de Excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Ahora para crear un botón, puedes hacer lo siguiente:
6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona Asignar macro / Selecciona: copiarfila
9. Aceptar.
10. Para ejecutarla dale click a la imagen.

Sub copiarfila()
'Por.DAM
Set h1 = Sheets("Hoja1")
Set h2 = Sheets("Hoja2")
j = 1
For i = 1 To h1.Range("G" & Rows.Count).End(xlUp).Row
    If h1.Cells(i, "G") = h1.Cells(i, "I") Then
        h1.Rows(i).Copy h2.Rows(j)
        j = j + 1
    End If
Next
End Sub

Cambia en la macro “Hoja1” por el nombre de tu hoja que tiene los datos y cambia “Hoja2” por el nombre de la hoja donde se van a copiar los datos

Saludos. Dante Amor
Si es lo que necesitas.

Que tal, no copia los datos que necesito copia otros datos si me puedes ayudar a corregirlo, gracias

Y qué datos necesitas, según entiendo si la "G" y la "I" son iguales, esa fila se debe copiar

pero haz de cuenta que ammm "G3" esta en "I2" y quiero que tome solos datos que tengan algo, no los vacíos

Puedes poner una lista de ejemplos para entender mejor

a b c d e f g

25 16nov 580 25

26 16nov 60 70 581 26

27 16nov 70 0 0 582 27

28 16nov 583 28

28 16nov 70 26 584 26

29 16nov 72 40 252 29

30 16nov 40 0 0 253 30

Ejemplo: Primer el dato original es el de "C" y si lo encuentra en la linea de arriba en "E" entonces cópialo y pégalo en otra hoja

en la lista el resultado es:

a b c d e f g

27 16nov 70 0 0 582 27

30 16nov 40 0 0 253 30

espero sirva de ayuda

¿Entonces es C comparado con E?

Siempre es con la línea de arriba o, por ejemplo, ¿el 70 de la columna "C" lo busco en toda la columna "E"?

Exacto solo es con la de arriba y este es un ejemplo la comparación es entre "G" con "I" pero si exactamente con la columna de arriba

Prueba con esta

Sub copiarfila()
'Por.DAM
Set h1 = Sheets("Hoja1")
Set h2 = Sheets("Hoja2")
j = 1
For i = 2 To h1.Range("G" & Rows.Count).End(xlUp).Row
    If h1.Cells(i, "G") = h1.Cells(i - 1, "I") Then
        h1.Rows(i).Copy h2.Rows(j)
        j = j + 1
    End If
Next
End Sub

asi pero aun pasa datos que no son necesarios como podría corregir ese error me parece que pasa los vacios

Así

Sub copiarfila()
'Por.DAM
Set h1 = Sheets("Hoja1")
Set h2 = Sheets("Hoja2")
j = 1
For i = 2 To h1.Range("G" & Rows.Count).End(xlUp).Row
    If h1.Cells(i, "G") <> "" And h1.Cells(i, "G") = h1.Cells(i - 1, "I") Then
        h1.Rows(i).Copy h2.Rows(j)
        j = j + 1
    End If
Next
End Sub

p.d. ayudaría si ponen todo el detalle desde el principio

parece que ya funcionó deja lo pruebo y puntúo

bueno

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas