Buscar en una columna un texto determinado y copiar la fila entera en otra hoja

Que probablemente ya han resuelto, pero que no puedo encontrar.

Durante el día ingreso varias operaciones en el sistema interno de la compañía en la que yo trabajo, la cual tiene la ventaja de que, al final del día, puedo pasar todo a una hoja de excel.

Ya que diariamente tengo que llevar una estadística de estas operaciones se me ocurrió hacer una macro capaz de almacenar esta información según el tipo de producto que vendemos.

Planeo crear una base de datos que funcionaria de la siguiente manera:

Primero, copiar las operaciones del día en la HOJA 1 con el nombre de "OPERACIONES DEL DIA" en la cual pegaría los datos resultantes de mi sistema.

Luego, mediante la ayuda de una macro, desplazarme desde la FILA 2 hasta la ULTIMA FILA QUE CONTENGA ESTOS DATOS, buscar el texto DEPÓSITO A PLAZO (sin acento en la O) y una vez encontrado pegar esta en otra hoja de excel.

Ya que esto lo realizaría todos los días, me gustaría que se copie en la fila 2, desplazando la anterior hacia abajo para que no se superponga.

Necesito de su pericia.

1

1 Respuesta

807.250 pts. Excel avanzado y VBA

Te mando mi solución, sigue mis pasos:

En este ejemplo los datos están en la hoja1 ocupando el rango A1:B30 (siendo la primera fila el encabezado). La siguiente macro se recorrerá la columna A fla por fila examinando su contenido y cuando encuentre la frase buscada copiará la fila entera a la hoja2 desde la fila2 y además desplazará los anteriores datos hacia abajo, por lo que el último copiado siempre estará el primero.

Para ejecutar la macro posiciónate encima del primer valor de la columna A y después ejecútala.

Sub listado()
Do While ActiveCell.Value <> ""
If UCase(InStr(ActiveCell, "deposito a plazo")) Then
ActiveCell.EntireRow.Copy
Sheets("hoja2").Select
Rows("2:2").EntireRow.Insert
Sheets("hoja1").Select
End If
ActiveCell.Offset(1, 0).Select
Loop
Application.CutCopyMode = False
End Sub

recuerda finalizar y puntuar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas