Pregunta:
¿COMO HAGO PARA QUE UN FILTRO EN EXCEL SEA DEPENDIENTE DEL VALOR DE UNA CELDA?
anonymous
2010-09-01 15:07:15 UTC
O SEA QUE AL COLOCAR POR EJEMPLO 1 EN LA CELDA ME FILTRE TODAS LAS FILAS QUE CONTENGAN EL VALOR DE LA CELDA, SE AGRADECE SI SE PUDIERA REALIZAR CON MACROS VBA
Tres respuestas:
?
2010-09-02 08:51:41 UTC
Hola.



Supongamos el siguiente escenario:



--Rango de la matriz: B4:D23, el rango de lo escribirás en el VB ActiveSheet.Range("$B$4:$D$23")



--El valor que quieres que se filtre es la columna C, o sea el campo 2, (si fuera la D, sería el campo 3), la columna a filtrar la escribirás (enseguida de la matriz) en el VB AutoFilter Field:=2



--Valor para filtrar: El valor que elijas se quedará en la celda B2



Ahora los pasos para activar el VB



1.-Abre tu archivo de Excel.

2.- ALT+F11 (para abrir VB)

3.- Selecciona del menú Insertar/Userform

4.- Selecciona del menú Ver/Cuadro de herramientas.

5.- Del cuadro de herramientas elige el "cuadro de texto" (ab|) y arrástralo a la Userform.

6.- En la userform dale doble click al cuadro de texto y se abre una nueva ventana.

7.- Escribe lo siguiente:

Private Sub TextBox1_Change()

Range("B2").Select

ActiveCell.FormulaR1C1 = TextBox1

End Sub

8.- Del cuadro de herramientas elige el "botón de comando" (uno abajo y a la derecha del ab|) y arrástralo a la Userform.

9.- En la userform dale doble click al botón de comando y se abre una nueva ventana.

10.- Escribe lo siguiente:

Private Sub CommandButton1_Click()

Selection.CurrentRegion.Select

ActiveSheet.Range("$B$4:$D$23").AutoFilter Field:=2, Criteria1:=TextBox1

End Sub





Espero te sea útil la información.



Saludos!!
anonymous
2010-09-02 19:52:10 UTC
usa filtro avanzado



suerte
El Pay
2010-09-02 14:08:08 UTC
Te paso una macro:



Private Sub CommandButton1_Click()

Range("A4:B23").Select

Range("A4:B23").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _

"E4:E5"), CopyToRange:=Range("H4"), Unique:=False

End Sub



El filtrado se hace al presionar el botón CommandButton1.

En este caso se definió un rango desde A4 hasta B23, con dos columnas conteniendo datos.

El criterio de filtración se especificó en E4:E5 (E4 nombre de columna, E5 valor del dato por el que se filtra).

La tabla filtrada se escribe desde H4 hacia abajo.



Si te fijas, la macro es lo mismo que aplicar un filtro avanzado en forma repetitiva.

Cualquier duda contactame por e-mail.



Suerte


Este contenido se publicó originalmente en Y! Answers, un sitio web de preguntas y respuestas que se cerró en 2021.
Loading...