Puedes descargar el fichero: busca_fragmento.xlsm
Al buscar una palabra o un fragmento en Excel podemos utilizar Control+B y así buscaremos a mano, de uno en uno. Pero si deseamos buscar un fragmento que pudiera estar dentro de una celda, y deseamos hacer la búsqueda de forma masiva necesitaremos una pequeña macro que nos ayude. En este caso creamos la macro y la utilizamos junto con Formato Condicional para marcar las celdas que incluyen ese fragmento y que queden visibles con un cierto color. De esta forma localizaremos rápidamente y de forma visual las celdas que contienen el fragmento o palabra que deseamos buscar.
En la celda amarilla indicamos la palabra que deseamos buscar.
La función que hemos creado se llama =POSICION y tiene los siguientes argumentos:
=POSICION(texto;palabra;exacto)
donde:
- texto, indica la celda donde está el texto que se quiere buscar
- palabra, indica la palabra o fragmento que se desea buscar
- exacto, es un argumento opcional. Si no se pone nada o se pone FALSO, o se pone 0, la búsqueda no será exacta, y por lo tanto no será sensible a mayúsculas y minúsculas. Por el contrario, si se pone la palabra VERDADERO, o se pone 1, la búsqueda será exacta y entonces si requiere que las mayúsculas, y minúsculas se cumplan escrupulosamente
La clave de todo está en la función de VBA denominada InStr que nos da el número de carácter que ocupa el primer carácter de la palabra buscada dentro del texto. Si da cero es que la palabra no se encuentra.
En el formato condicional lo que pedimos es que ese número de caracteres sea mayor que cero, lo cual indicará que la palabra buscada si se encuentra en el texto y que por lo tanto se ha de marcar de color verde la celda.
En el formato condicional lo que pedimos es que ese número de caracteres sea mayor que cero, lo cual indicará que la palabra buscada si se encuentra en el texto y que por lo tanto se ha de marcar de color verde la celda.
La macro es la siguiente.
Hola estube viendo el articulo y me parecio interesante, yo hice de esta forma:
ResponderEliminar=NO(ESERROR(HALLAR($C$5,$B8,1)))
cree un formato condicional usando nueva regla de formula.
aplique ese formato a la primera celda , luego copie formato a todas.
Lucio, buen dia
Eliminarpuedes por favor enviarme el ejemplo completo, para poder entenderlo.
gracias de antemano
Felix
Hola Lucio.
ResponderEliminarTu fórmula funciona estupendamente.
Gracias por el aporte.
Lucio.
ResponderEliminarExcelente macro para millares de registros y filtrar las coincidencias, te felicito, saludos
se puede hacer que la celda marcada se mantenga marcada aunque haga otra busqueda
ResponderEliminarMe quedo con la Pregunta de Erik Urbina R
ResponderEliminarsería interesante que quedase coloreada una plabra o número que fué buscado esto serviría en una serie de números los cuales quieres que queden pintados los que ya encontraste anteriormente
hay algún video de youtube que muestre la forma de usarlo?
ResponderEliminar