- Desactive el autofiltro en la hoja de trabajo activa en VBA
- Active Autofiltro en la hoja de trabajo activa en VBA
- Desactive Autofiltro en todas las hojas de trabajo en VBA.
- Desactive Autofiltro en todas las hojas de trabajo en VBA.
- Borrar todos los filtros en la hoja de trabajo activa en VBA
- Borrar todos los filtros en todas las hojas de trabajo en VBA
- Borrar todos los filtros en una tabla en VBA
Este tutorial demostrará cómo desactivar / borrar autofiltros en VBA.
Los autofiltros se pueden activar o desactivar mediante el código VBA.
Desactive el autofiltro en la hoja de trabajo activa en VBA
El siguiente ejemplo de código desactiva Autofiltro en la hoja activa, comprobando primero que no esté desactivado todavía.
12345 | Public Sub KillFilter ()Si ActiveSheet.AutoFilterMode EntoncesActiveSheet.AutoFilterMode = FalseTerminara siEnd Sub |
Active Autofiltro en la hoja de trabajo activa en VBA
El siguiente ejemplo de código activa Autofiltro en la hoja activa, comprobando primero que no está activado todavía.
12345 | Public Sub StartFilter ()Si no es ActiveSheet.AutoFilterMode, entoncesActiveSheet.Range ("A1"). AutofiltroTerminara siEnd Sub |
Desactive Autofiltro en todas las hojas de trabajo en VBA.
El siguiente ejemplo de código recorre cada hoja en todo el libro y desactiva Autofiltro en cada hoja de trabajo, verificando primero que el filtro en el libro actual no esté activado.
12345678 | Public Sub StopAllFilters ()Dim ws como hoja de trabajoPara cada ws en ActiveWorkbook.Si ws.AutoFilterMode = True Entoncesws.AutoFilterMode = FalsoTerminara siSiguiente wsEnd Sub |
Desactive Autofiltro en todas las hojas de trabajo en VBA.
De manera similar, el siguiente ejemplo de código recorre todo el libro y activa Autofiltro en cada hoja, verificando primero que el filtro en el libro actual no esté activado.
12345678 | Public Sub StartAllFilters ()Dim ws como hoja de trabajoPara cada ws en ActiveWorkbook.Si no es ws.AutoFilterMode, entoncesws.Range ("A1"). AutofiltroTerminara siSiguiente wsEnd Sub |
Borrar todos los filtros en la hoja de trabajo activa en VBA
El siguiente ejemplo de código deja el Autofiltro activado en la Hoja activa, pero borra cualquier filtro que se aplique a los datos.
12345 | Public Sub ClearFilter ()Si ActiveSheet.FilterMode = True EntoncesActiveSheet.ShowAllDataTerminara siEnd Sub |
Borrar todos los filtros en todas las hojas de trabajo en VBA
De manera similar, el siguiente ejemplo de código recorre todo el libro y deja el Autofiltro activado en cada hoja si ya está activado, pero borra cualquier filtro que se aplique a los datos.
12345678 | Public Sub ClearAllFilters ()Dim ws como hoja de trabajoPara cada ws en ActiveWorkbook.Si ws.FilterMode = True Entoncesws.ShowAllDataTerminara siSiguiente wsEnd Sub |
Borrar todos los filtros en una tabla en VBA
Si nuestra hoja de trabajo contiene un objeto de tabla, podemos ajustar el código para borrar cualquier filtro que se aplique a ese filtro, dejando el Autofiltro activado.
123456789 | Sub ClearFilterFromTable ()Dim ws como hoja de trabajoDim sTable como cadenaDim loTable como ListObjectsTable = "Tabla1"Establecer ws = ActiveSheetEstablecer loTable = ws.ListObjects (sTable)loTable.AutoFilter.ShowAllDataEnd Sub |
Si el objeto de la tabla está vinculado a una tabla dinámica, la tabla dinámica se actualizará en consecuencia.