Hola a todos!, ¿qué tal estáis?
Hoy publicaré un post muy breve dando contestación a un lector que me preguntaba cómo podía ocultar los iconos de filtro que aparecen una tabla dinámica. Esto es útil si usamos nuestro excel como un documento a modo de presentación y queremos ocultar el aspecto de la tabla dinámica, o impedir que se puede volver a filtrar o desfiltrar los datos de una tabla.
Veamos un ejemplo sencillo con una tabla dinámica:
Para poder eliminar los iconos de filtro es necesario utilizar una macro, es este caso la rutina realiza los cambios en todas las tablas que se encuentren en el libro.
Sub oculta_filtro()
'Declaramos variables
Dim Hoja As Worksheet
Dim Tabla_d As PivotTable
Dim Campo As PivotField
'Recorremos todos los libros y las hojas
For Each Hoja In ActiveWorkbook.Sheets
For Each Tabla_d In Hoja.PivotTables
For Each Campo In Tabla_d.PivotFields
'Desactivamos la selección de los items
Campo.EnableItemSelection = False
Next
Next Tabla_d
Next Hoja
End Sub
El resultado será el siguiente:
Como podéis comprobar hemos eliminado sin problema los iconos del filtro en la tabla. Para volver a ponerlos solo es necesario cambiar en el código = False
por = True
Y eso es todo, espero que os resulte de utilidad.
¿Te ha resultado de interés?, puedes apoyar a Excel Signum con una pequeña donación.
¡¡Muchas gracias!!
Estimado Segu:
Fenomenal ejemplo, solo un pero, ¿Porque en este ejemplo no adjuntas el fichero demostración, como haces siempre?-
Un abrazo.
Hola Ernesto: Normalmente lo adjunto, pero cuando se trata de códigos muy sencillos dejo el código y las imágenes. Es es el motivo. Saludos ; )
Con CTRL Shift L tambien lo haces…
Campo.EnableItemSelection = False esta sentencia no funciona en mi pivot
Lo he probado de nuevo en mi equipo y funciona correctamente. No sé cual puede ser el problema.
Saludls
buenos dias, sin son tablas echas con powerpivot funciona igual no me corre la sentencia de Campo.EnableItemSelection = False
tendría que verlo, el ejemplo es para pivots de excel. Saludos.
Hola buena tarde, esta macro no funciona cunado la tabla dinámica ha sido creada en base a datos que se encuentran en un modelo de datos en powerpivot, hay alguna otra forma de hacer funcional la macro, se supone que deberia de funcionar.
Saludos