Problema
Por defecto al crear una tabla dinámica, Excel actualizará automáticamente el ancho las columnas de la tabla dinámica al tamaño del texto o valor de número más extenso. En lugar de desactivar esta opción manualmente como en la entrada anterior para cada una de las tablas dinámicas, queremos hacerlo automáticamente mediante VBA
Solución
Para desactivar esta opción en todas las tablas dinámicas de la hoja activa.
- Abrimos el Editor de Microsoft Visual Basic: Alt+F11.
- Copiamos una de las subrutinas de más abajo en un módulo.
- Tablas en la hoja activa
- Todas las tablas del libro de Excel
- Ejecutamos la subrutina, F5.
- Habremos deseactivado las casillas de Autoajustar anchos de columnas al actualizar en todas las tablas dinámicas de la hoja activa o del libro, dependiendo de la opción elegida.
Sub Desactivar_Autoajustar()
For Each pt In ActiveSheet.PivotTables
pt.HasAutoFormat = False
Next
End Sub
Sub Desactivar_Autoajustar2()
Dim n As Integer
Dim i As Integer
Dim pt As PivotTable
n = ActiveWorkbook.Worksheets.Count
For i = 1 To n
For Each pt In ActiveWorkbook.Worksheets(i).PivotTables
pt.HasAutoFormat = False
Next pt
Next i
End Sub
Referencias


Nube de datos
No hay comentarios:
Publicar un comentario