Buscar valores en columnas y pegar en celda contigua

Quisiera su colaboración con una macro de excel.

En la columna A, tengo descripciones en cada celda con el rango variable(aveces 100 datos aveces mas) ej:

-Vivo cerca a la ciudad principal y a 2 avenidas.

-Tengo cerca una licorera y un restaurante

-Quiero vivir alejado de los bosques

Quisiera que me busque la palabra (cerca) y la coloque al frente de la descripción, columna B las veces que se repita o que se encuentre en la columna A.

Pero ademas que me busque otra palabra, por ejemplo Alejado y también que coloque esta palabra al frente de la descripción.

Nunca en la celda estarán las 2 palabras, alejado y cerca.

1 respuesta

Respuesta
2

Esta es la macro que solicitas. Ajusta la col y la primer fila de datos que en mi ejemplo es A2.

Sub buscaTexto()
'x Elsamatilde
'recorre col A a partir de fila 2 hasta la 1er celda vacía.
[A2].Select
While ActiveCell <> ""
    If InStr(1, UCase(ActiveCell.Text), "CERCA") > 0 Then
        ActiveCell.Offset(0, 1) = "cerca"
    ElseIf InStr(1, UCase(ActiveCell.Text), "ALEJADO") > 0 Then
        ActiveCell.Offset(0, 1) = "alejado"
    Else
        ActiveCell.Offset(0, 1) = ""
    End If
    'pasa a fila siguiente
    ActiveCell.Offset(1, 0).Select
    'repite el bucle
Wend
MsgBox "Fin de la búsqueda."
End Sub

Estoy haciendo la búsqueda en mayúsculas (UCASE) para cubrir todas las variantes de escritura.

Elsa, mil gracias por tu colaboración, me gustaría saber que debo modificar si requiero buscar más palabras, ¿qué función debería incluir?

Saludos

Seguir agregando instrucciones con ElseIf para cada texto buscado, antes de la línea del ELSE

ElseIf InStr(1, UCase(ActiveCell.Text), "OTRO TEXTO") > 0 Then
        ActiveCell.Offset(0, 1) = "otro texto"

Ahora, si son muchos los textos, quizás se podría armar otra macro que recorra una lista que tendrás en alguna ubicación. En ese caso valora para dar por cerrada esta consulta y deja una nueva ya que se tratará de un nuevo código a desarrollar.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas