Saltar al contenido principal

¿Cómo borrar los filtros de todas las hojas de trabajo en el libro activo en Excel?

Supongamos que ha creado varios filtros en diferentes hojas de trabajo en un libro de Excel y ahora desea borrar todos estos filtros a la vez. Normalmente, debe cambiar a la hoja de trabajo uno por uno para verificar el filtro y luego borrarlo manualmente. ¿Existe algún método conveniente para borrar los filtros de todas las hojas de trabajo en un libro activo? Pruebe el método de este artículo.

Borre los filtros de todas las hojas de trabajo en el libro de trabajo activo con código VBA


Borre los filtros de todas las hojas de trabajo en el libro de trabajo activo con código VBA

Ejecute el siguiente script VBA para borrar los filtros de todas las hojas de trabajo en el libro activo.

1. En el libro de trabajo del que necesita borrar los filtros, presione el otro + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. En el Microsoft Visual Basic para aplicaciones ventana, haga clic recuadro > Módulo. Luego copie y pegue el siguiente script VBA en la ventana del Módulo. Vea la siguiente captura de pantalla:

Código de VBA: borre los filtros de todas las hojas de trabajo en el libro activo

Sub Clear_fiter()()
'Updated by Extendoffice 20210625
    Dim xAF As AutoFilter
    Dim xFs As Filters
    Dim xLos As ListObjects
    Dim xLo As ListObject
    Dim xRg As Range
    Dim xWs As Worksheet
    Dim xIntC, xF1, xF2, xCount As Integer
    Application.ScreenUpdating = False
    On Error Resume Next
    For Each xWs In Application.Worksheets
        xWs.ShowAllData
        Set xLos = xWs.ListObjects
        xCount = xLos.Count
        For xF1 = 1 To xCount
         Set xLo = xLos.Item(xF1)
         Set xRg = xLo.Range
         xIntC = xRg.Columns.Count
         For xF2 = 1 To xIntC
            xLo.Range.AutoFilter Field:=xF2
         Next
        Next
    Next
    Application.ScreenUpdating = True

End Sub

3. presione el F5 clave para ejecutar el código. Luego, todos los filtros en todas las hojas de trabajo en el libro de trabajo actual se borran inmediatamente.


Artículos relacionados:

Las mejores herramientas de productividad de oficina

🤖 Asistente de IA de Kutools: Revolucionar el análisis de datos basado en: Ejecución inteligente   |  Generar codigo  |  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos  |  Invocar funciones de Kutools...
Características populares: Buscar, resaltar o identificar duplicados   |  Eliminar filas en blanco   |  Combine columnas o celdas sin perder datos   |   Ronda sin fórmula ...
Super búsqueda: Búsqueda virtual de criterios múltiples    Búsqueda V de valores múltiples  |   VLookup en varias hojas   |   Búsqueda difusa ....
Lista desplegable avanzada: Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple ....
Administrador de columnas: Agregar un número específico de columnas  |  Mover columnas  |  Toggle Estado de visibilidad de columnas ocultas  |  Comparar rangos y columnas ...
Características destacadas: Enfoque de cuadrícula   |  Vista de diseño   |   Gran barra de fórmulas    Administrador de hojas y libros de trabajo   |  Biblioteca de Recursos (Texto automático)   |  Selector de fechas   |  Combinar hojas de trabajo   |  Cifrar/descifrar celdas    Enviar correos electrónicos por lista   |  Súper filtro   |   Filtro especial (filtro negrita/cursiva/tachado...) ...
Los 15 mejores conjuntos de herramientas12 Texto Herramientas (Añadir texto, Quitar caracteres, ...)   |   50+ Tabla Tipos (Diagrama de Gantt, ...)   |   40+ Práctico Fórmulas (Calcular la edad según el cumpleaños, ...)   |   19 Inserción Herramientas (Insertar código QR, Insertar imagen desde la ruta, ...)   |   12 Conversión Herramientas (Números a palabras, Conversión de Moneda, ...)   |   7 Fusionar y dividir Herramientas (Filas combinadas avanzadas, Células partidas, ...)   |   ... y más

Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo.  Haga clic aquí para obtener la función que más necesita...

Descripción


Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
@Lorif - delete For Each xWs In Application.Worksheets and one of the Nexts
This comment was minimized by the moderator on the site
Which line should I change to restrict the macro to ONLY the active sheet, rather than all of them?Much appreciated!
This comment was minimized by the moderator on the site
hi, everytime I open the file the macro runs and the filters are cleared, how to avoid that "auto run" of the macro?
This comment was minimized by the moderator on the site
Hi Juan Moreno,
I am sorry for my mistake.Replace the first line:
Sub Auto_Open()withSub Clear_filter()with solve the problem.
This comment was minimized by the moderator on the site
this removes all filters, I wanted something that would clear the filters not remove them.
This comment was minimized by the moderator on the site
Hi Saima,I got your point. The code has been updated in the post to only clear the filters instead of removing them. Please to have a try and sorry for the inconvenience.<div data-tag="code">Sub Auto_Open()
'Updated by Extendoffice 20201113
Dim xAF As AutoFilter
Dim xFs As Filters
Dim xLos As ListObjects
Dim xLo As ListObject
Dim xRg As Range
Dim xWs As Worksheet
Dim xIntC, xF1, xF2, xCount As Integer
Application.ScreenUpdating = False
On Error Resume Next
For Each xWs In Application.Worksheets
xWs.ShowAllData
Set xLos = xWs.ListObjects
xCount = xLos.Count
For xF1 = 1 To xCount
Set xLo = xLos.Item(xF1)
Set xRg = xLo.Range
xIntC = xRg.Columns.Count
For xF2 = 1 To xIntC
xLo.Range.AutoFilter Field:=xF2
Next
Next
Next
Application.ScreenUpdating = True

End Sub
This comment was minimized by the moderator on the site
Thanks this help me alot ;=)
This comment was minimized by the moderator on the site
You fucking scumbag this deleted all our filters! Our whole python script was destroyed as a result of it costing us hours! GO TO HELL YOU SCUMBAGS!!!!!!!!!!!!!!!!
This comment was minimized by the moderator on the site
You're getting free help and degrading others for your own stupid mistakes. People like you deserve a special place in hell
This comment was minimized by the moderator on the site
Why didn't you test it fully before working on your latest file and don't you have backup... work on your IT habits before using harsh language.
This comment was minimized by the moderator on the site
Hi,
Sorry for the mistake. The code has been updated in the post to only clear the filters instead of removing them. Please to have a try and sorry for the inconvenience.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations