SUSCRÍBASE A NUESTRO BLOG
SOBRE APESOFT

ApeSoft es una compañía de soluciones de Gestión del Rendimiento Empresario: Gamification, Reporting, Dashboards, Planificación Presupuestaria y Balanced Scorecard, fundada en 1994, con sede central en España y oficinas en Estados Unidos.

Más información: Web ApeSoft

« Importar datos dinámicos | Main | La red comercial de Aguas Font Vella y Lanjarón SA mejora el análisis de la información de ventas con DataCycle Reporting »
jueves
jul192007

Actualización automática de los datos de una tabla dinámica

Cuando se consolida el diseño de una tabla dinámica, se tiende a dejar en una hoja Excel y usar como un informe más. A partir de ese momento puede ser útil definir que siempre que se muestre la tabla sea con los datos actualizados. Y de esta manera no será necesario hacerlo manualmente mediante la opción TrucoExcelFrancesc_actualizcampo.JPG(“Actualizar Datos”). Esto es muy cómodo si no se tiene activa la barra de herramientas de ‘Tabla dinámica’ en nuestra configuración propia de Excel.

Para conseguir esta actualización de datos automática, basta con realizar estos dos pasos:

1. Actualizar la tabla cuando se abre el documento Excel: Marcar la opción “Actualizar al abrir” en Opciones de Tabla dinámica (se accede desde la barra de T. dinámica o bien pulsando el botón derecho del mouse encima de la tabla dinámica.

TrucoExcelFrancesc.JPG

 

2. Actualizar la tabla cuando se accede a la hoja que contiene la tabla dinámica :

Esta acción es muy práctica cuando se tienen los datos origen de la tabla en una hoja diferente (mayoría de casos). Se trata de introducir un código fuente que refresque los datos cada vez que se active la hoja, de manera que si se han hecho cambios en las celdas del rango de datos origen de la tabla, estos se reflejen automáticamente en la tabla en cuanto se quiera visualizar.

Concretamente se ha de añadir este código al evento de ActivarHoja, en la hoja que contiene la Tabla dinámica:

Private Sub Worksheet_Activate()

Dim iNumTable As Integer

For iNumTable = 1 To ActiveSheet.PivotTables.Count

ActiveSheet.PivotTables(iNumTable).RefreshTable

Next iNumTable

End Sub

PrintView Printer Friendly Version

EmailEmail Article to Friend