Saltar al contenido

Recorrer Columna A y buscando texto dentro la columna B


Recommended Posts

publicado

Buenas tardes,

 

He buscas y buscado antes de escribir pero no encuentro nada parecido y tampoco soy de capaz de modificar otro macro para conseguirlo.

 

Necesito ir recorriendo la columna "A" e ir haciendo búsquedas en la Columna "B", pero busquedas solo de parte del texto.  

 

Mi idea seria, empezar por "A1" y que busque en toda "B". si encuentra algo que copie toda la Fila ( desde B en adelante ) en otra hoja y que la borre de la columna A. Si no, que no haga nada. Y repetirse hasta llegar al final de la columna A.

 

Muchas gracias de antemano!

publicado

Hola Luis,

 No me expresado bien,  el valor que quiero buscar esta en la primera columna de una base de datos, cuando coincida quiero que me copie la fila entera, pero bueno, eso es lo menos, me vale con que me la señale de algun color.

En tanto al texto a buscar te explico con ejemplos:

         -  En la base de datos tengo datos de antenas de telefonia, la primera celda es el codigo del emplazamiento. Por Ejemplo:

                                                                                          "1400023"
     
          - En los datos que me aportan viene en la misma celda el codigo con el nombre. Por Ejemplo:

                                                                                       "1400023-Cordoba Centro"

Basicamente quiero que me busque el codigo del emplazamiento dentro de la celda que lleva codigo+nombre.

 

Lo he intentado hacer anidando .FIND que busca texto dentro de una celda pero... nada no lo consigo.

publicado

Será algo parecido a esto, o no, porqué como no has subido un archivo explicando con un ejemplo lo que quieres.

Sub Copiar()
Application.ScreenUpdating = False
x = 1
With Hoja2
   .Rows.Clear
   Do Until Range("A" & x) = ""
      Set celda = Columns("B").Find(Range("A" & x), , xlValues, xlPart)
      If celda Is Nothing Then
         x = x + 1
      Else
         fila = fila + 1
         Rows(celda.Row).Copy .Rows(fila)
         Rows(celda.Row).Delete
      End If
   Loop
   .Columns("A").Delete
   .Select
End With
End Sub

 

publicado

ANTONI gracias!!

 

Es lo que busco, pero tengo un par de problemas, el primero es que la busqueda deberia de ser de la Columna A a la Columna B, y devolverme copiada la fila que corresponda a la columna B, pero bueno eso se arregla duplicando la columna B en la A  y bla bla bla no te preocupes.

El que realmente me esta volviendo loco es que me borra toda la fila, lo que provoca que pierda datos de mi base de datos, solo debería de borrar la celda de la columna en la que busca. He probrado a modificar el codigo pero o no funciona o me entra en bucle.

Por favor ayudame solo con  eso, que no me borre la fila completa al copiar.

 

Te adjunto un ejemplo de lo que tengo. 

 

Un saludo.

 

EJEMPLO.xlsm

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.