Macro para Filtrar Datos varios Criterios

Expertos Buenos Días:

Tengo la siguiente sentencia:

ActiveSheet.Range("$A:$P").AutoFilter Field:=18, Criteria1:=Array("*Carro Azul*", "*Cazul*", "*Carro de Azul*"), Operator:=xlFilterValues

Cuando la macro ejecuta esta sentencia, si algunas de las 3 palabras citadas anteriormente no existe sencillamente el filtro no trae ningún dato de las otras 2 palabras así si existan. Es decir todo queda en blanco.

Alguno podría decirme como se puede variar este código para que sencillamente si alguna palabra no exista, ¿traiga las otras coincidencias especificadas?

1 respuesta

Respuesta
4

Puede ser así

ActiveSheet.Range("$A:$R").AutoFilter Field:=18, _
    Criteria1:=Array("Carro Azul", "Carro de Azul", "Cazul"), Operator:=xlFilterValues

O puede ser así

ActiveSheet.Range("$A:$R").AutoFilter Field:=18, _
    Criteria1:="=*carro*azul*", Operator:=xlOr, Criteria2:="=*cazul*"

En cualquiera de las opciones revisa que el rango sea desde A hasta R, ya que el campo 18 es la "R"


Incluso puede sera así:

ActiveSheet.Range("$A:$R").AutoFilter Field:=18, _
    Criteria1:="=*c*azul*"

Cualquiera de las 3 opciones te trae las coincidencias que tengan una "c" y la palabra "azul"


Gracias dam, ¿pero por ejemplo si el contenido de las celdas a filtrar tiene estas palabras y más es decir asdafcazul o sdfsdfcarroazul serviría este código?

Lo probé con esas palabras y sí funciona.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas