Esconder filas en tabla dependiendo del valor de una celda en VBA Excel

Tengo una duda fácil de explicar pero no sé si de resolver.

Tengo una tabla con cientos de filas las cuales en una columna determinada puede contener un valor "x" cualquiera o uno concreto "valor_fijo".

Normalmente la tabla no muestra las filas que tienen el valor fijo pero a veces quiero que lo haga. Entonces, ejecuto una macro que tiene la siguiente línea de código:

ActiveSheet.Range("$A$1:$U$10000").AutoFilter Field:=20

Y con eso deja de aplicar el filtro que está activo a la hoja y muestra todas las filas.

Cuando luego quiero ocultar las filas con la celda con el "valor_fijo", al grabar una macro para ver cómo lo haría, el código que graba es algo así:

ActiveSheet.Range("$A$1:$U$10000").AutoFilter Field:=20, Criteria1:=Array( "valor1", "valor2", "valor3", "valor_4", "="), Operator:=xlFilterValues

(Realmente, valor1, valor2, ... Son valores numéricos y tengo decenas de ellos y cada vez se añaden nuevos).

Es decir, en lugar de "ocultar un valor concreto" lo que hace es "mostrar unos valores concretos".

Obviamente esta línea no me sirve porque como se irían añadiendo "valores" de vez en cuando, esos valores quedarían fuera de esa línea de código y al ejecutar la línea para ocultar las filas de "valor_fijo", también se ocultarían las que no estuvieran en esa línea.

¿Hay alguna manera de hacer que "oculte" un valor en lugar de "mostrar valores concretos"?

Añade tu respuesta

Haz clic para o