Observación: esta técnica se aplica a Excel Clásico. Excel 2007 tiene un método incorporado para solucionar este problema.
Supongamos este modelo en una hoja de Excel
Vemos una tabla/lista en el rango A1:C19 que sirve como base de datos para la tabla dinámica que vemos a la derecha en el rango E1:I9
La tabla dinámica muestra todas las ventas de los agentes para todos los meses que aparecen en la base de datos.
Ahora despleguemos la lista del campo Fechas
¿Por qué aparecen las fechas Julio-09, Agosto-09, Setiembre-09 y Octubre-09, si no están en la base de datos?
El motivo es que estas fechas si estaban en la base datos al momento de construir la tabla dinámica, pero fueron borrados posteriormente.
Todo nos haría pensar que bastaría con apretar el botón “Actualizar Datos” para que estos valores inexistentes desaparezcan, pero no es así.
En el pasado vimos como solucionar esto manualmente. En nuestro ejemplo quitamos el campo Fechas, actualizamos los datos y volvemos a poner el campo Fechas en la tabla.
Sin embargo, hay situaciones en las cuales esta técnica no funciona. Por ejemplo, si tenemos varias tablas dinámicas basadas en la misma base de datos (de hecho, comparten el mismo PivotCache).
Por ejemplo, si creamos una segunda tabla basada que en la base de datos, vemos que los meses inexistentes siguen apareciendo en la lista desplegable
Volvemos a repetir la técnica indicada al principio, pero los meses inexistentes siguen apareciendo
En este caso tendremos que usar una macro para solucionar el problema. En un módulo común del editor de Vba ponemos este código
Sub eliminarValoresenPTCache()
Dim ptC As PivotCache
For Each ptC In ActiveWorkbook.PivotCaches
ptC.MissingItemsLimit = xlMissingItemsNone
ptC.Refresh
Next ptC
End Sub
Después de correr esta macro, los valores borrados de la base de datos ya no aparecerán en las tablas dinámicas.
Technorati Tags: MS Excel
Jorge:
ResponderBorrarUna buena previsión para que las tablas dinámicas no preserven registros que ya eliminamos de una base es que al crear la tabla, en la configuración de tabla dinámica, en la pestaña de Datos, se seleccione la opción de ninguno, cuando se define el: “Número de elementos que desea conservar por campo”
Sirva este comentario para agradecer la enorme calidad de tu Blog, por lo que espero con gusto, como muchos, su actualización. Me encantaría que siguieras abordando el tema de las Cuadro de control (dashboard) y de cómo crear y administrar una base de datos. Gracias de nuevo
Gracias por el comentario. Esa opción existe en Excel 2007, pero no en la versiones anteriores.
ResponderBorrarMe olvidé de señalar que la nota se refiere a las versiones clásicas de Excel (97-20003).
Tal vez publique una nota sobre las diferencias en tablas dinámicas entres Excel clásico y Excel 2007.
Muchas gracias
ResponderBorrarGraciias Men Me SALVASTe La Viida
ResponderBorrarBuenos dias
ResponderBorraren que parte de excel 2007 "tiene un metodo incorporado para solucionar este problema"
trabajo a diario con tablas dinamicas en excel 2007 y tengo este problema.
gracias por anticipado.
Opciones de Tabla Dinámica->Datos->"Mantener los elementos elliminados..."->"Numero de elementos que desea conservar por campos"
ResponderBorrarMil Gracias!!
ResponderBorrarHoy acabo de solucionar algo que por tiempo me tenia dando vueltas.
Esta Web debe estar en mi lista de favoritos.
Gracias!!!
ResponderBorrarpuuuuu!!! que chivo muy bueno amigo gracias!!! me ayudo un monton
ResponderBorrarPasará el tiempo, y este blog seguirá siendo de los más útiles, sólo ver desde qué año vienen los comentarios. Gracias Jorge!!!
ResponderBorrarBuenazo, me sirvió bastante. Gracias!!!
ResponderBorrar