Cuando creamos una tabla dinámica Excel instala filtros en los distintos campos (filas, columnas y filtro del informe)
Si por algún motivo queremos ocultar las flechas de los filtros, por ejemplo para evitar que un usuario cambie el contenido del informe, podemos usar la opción "Encabezados de campos" en el grupo Mostrar en las Opciones de las tablas dinámicas
Pero esta opción tiene un problema: no sólo quita las flechas sino también los encabezados
y como bono adicional, no quita el encabezado ni la flecha del filtro del informe. Los encabezados Ciudad, Agente y Año han desaparecido del informe dejando a nuestro desprevenido y poco informado usuario cavilando sobre si Janet Leverling es un agente de ventas o tal vez un cliente.
Para quitar las flechas de los filtros sin quitar los encabezados podemos usar esta macro
Sub ocultar_Filtros()
Dim ptbl As PivotTable
Dim pfld As PivotField
Set ptbl = ActiveSheet.PivotTables(1)
For Each pfld In ptbl.PivotFields
pfld.EnableItemSelection = False
Next pfld
End Sub
Esta animación muestra el resultado
Para volver a mostrar los filtros usamos esta macro, igual a la anterior pero con la propiedad EnableItemSelection con el valor True
Sub mostrar_Filtros()
Dim ptbl As PivotTable
Dim pfld As PivotField
Set ptbl = ActiveSheet.PivotTables(1)
For Each pfld In ptbl.PivotFields
pfld.EnableItemSelection = True
Next pfld
End Sub
De la misma manera podemos ocultar el filtro de un determinado campo. Para evitar que el usuario pueda filtrar el informe por Agente usamos esta macro
Sub ocultar_Item()
Dim ptbl As PivotTable
Dim pfld As PivotField
Set ptbl = ActiveSheet.PivotTables(1)
ptbl.PivotFields("Agente").EnableItemSelection = False
End Sub
Para volver a mostrar el filtro del campo cambiamos el valor de la propiedad EnableItemSelection a True.
Creo que hay una errata en la primera macro, en la fila 5
ResponderBorrarLo correcto sería: For Each pfld In ptbl.PivotFields
Efectivamente. Corregido!
ResponderBorrarGracias por colaborar.
Te roban tus publicaciones y ni la molestia de mencionarte:
ResponderBorrarhttps://es.scribd.com/document/304630529/Ocultar-Filtros-en-Tablas-Dinamicas
Gracias por todos tus aportes, aqui he aprendido mucho.
Gracias por la información.
Borrarbuenas tardes, y cuando son mas de una tabla dinamica en la misma hoja, como puedo hacer para q identifique las q se necesitan.
ResponderBorrarHola, fijate en este post.
ResponderBorrar