Resolveremos hoy un problema de búsqueda de coincidencias múltiples empleando el formato condicional.
La meta del problema de hoy es marcar con algún formato los nombres coincidentes de un listado con una segunda tabla:
Como se ve en la imagen, en nuestro listado situado en A2:B23, se marcan con un formato establecido aquellos nombres que aparecen en la tabla situada en G1:G3.
Para facilitar el trabajo, la tabla de G1:G3 la hemos renombrado como 'TblNombres', a la cual, ademas le hemos asignado un nombre definido, que responde a:
nombres =TblNombres[Nombres]
Llega el momento de configurar nuestro formato condicional.
Desde la ficha Inicio > grupo Estilos > botón Formato condicional > Nueva regla > Utilice una fórmula que determine las celdas para aplicar un formato, asegurándonos que la celda activa es A2, insertaremos la siguiente fórmula:
=NO(ESERROR(BUSCARV($A2;nombres;1;0)))
y a continuación le daremos algún formato...
Conseguimos lo esperado... tenemos marcado con algún formato todas aquellas coincidencias con nuestro listado de nombres buscados...
Algo similar aplicando una macro, donde usamos el método .Find sería:
La meta del problema de hoy es marcar con algún formato los nombres coincidentes de un listado con una segunda tabla:
Como se ve en la imagen, en nuestro listado situado en A2:B23, se marcan con un formato establecido aquellos nombres que aparecen en la tabla situada en G1:G3.
Para facilitar el trabajo, la tabla de G1:G3 la hemos renombrado como 'TblNombres', a la cual, ademas le hemos asignado un nombre definido, que responde a:
nombres =TblNombres[Nombres]
Llega el momento de configurar nuestro formato condicional.
Desde la ficha Inicio > grupo Estilos > botón Formato condicional > Nueva regla > Utilice una fórmula que determine las celdas para aplicar un formato, asegurándonos que la celda activa es A2, insertaremos la siguiente fórmula:
=NO(ESERROR(BUSCARV($A2;nombres;1;0)))
y a continuación le daremos algún formato...
Conseguimos lo esperado... tenemos marcado con algún formato todas aquellas coincidencias con nuestro listado de nombres buscados...
Algo similar aplicando una macro, donde usamos el método .Find sería:
Sub Coincidencia() 'recorremos cada nombre buscado en la tabla For Each nombre In Range("nombres") 'buscamos coincidencias en el rango A2:A23 With Range("A2:A23") 'localizamos el nombre buscado 'exigimos la coincidencia en toda la celda... Set c = .Find(nombre.Value, LookIn:=xlValues, LookAt:=xlWhole) If Not c Is Nothing Then firstAddress = c.Address Do 'si ha habido coincidencia 'cambiamos el color de las celdas Range(c, c.Offset(0, 1)).Interior.Color = vbYellow Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next nombre End Sub
Buenas, tengo una consulta como haria para validar un monto que se encuentre entre dos montos por ejemplo entre 800 y 4000 pero que sean multiplos de 50 utilizando validacion de datos. Muchas gracias por su ayuda de antemano
ResponderEliminarHola,
Eliminarse me ocurre añadir una validación personalizada:
=Y(celda>=800;celda<=4000;RESIDUO(celda;50)=0)
debería funcionar
Saludos