3 votos

Cómo rectificar el error de Excel "No pudimos obtener los datos de la tabla en el libro..."

Me encuentro con el siguiente problema utilizando MS Excel 2016:

  • El archivo de Excel contiene una enorme tabla de datos y varias tablas dinámicas en hojas separadas.
  • El archivo de Excel actual se guardó con un nuevo nombre de archivo de una versión anterior.
  • Ahora, al intentar "refrescar todos" los datos de la tabla dinámica en la cinta de herramientas de la tabla dinámica Analizar, aparece el siguiente mensaje de error, que hace referencia al nombre del archivo anterior:

No hemos podido obtener los datos de la 'Tabla1' en el libro de trabajo 'Oldfile.xlsx' Abra este libro de trabajo en Excel y vuelva a intentarlo.

Lo extraño es que:

  1. La tabla de datos en mi caso está en el mismo archivo que la tabla dinámica, no hay conexión externa.
  2. Cuando busco alguna conexión con el archivo anterior (antiguo) en mi nuevo archivo de Excel, no se encuentra ninguna conexión.

3voto

StackTheEast Puntos 21

Detalle adicional a la respuesta de @meggie arriba. Sospecho que esto tiene que ver con las conexiones corruptas del Modelo de Datos.

  1. Preste atención al mensaje de error: indicará el nombre de la conexión interrumpida entre comillas
  2. Datos -> Consultas y Conexiones para abrir la barra lateral
  3. Haga clic en la pestaña Conexiones
  4. Pase el ratón por encima de cada elemento y busque uno que coincida con el nombre del mensaje de error. Borrar.

Connections Tab full of connections, one of which was broken

1voto

Jay Cee Puntos 11

Tuve este problema y logré resolverlo cambiando el nombre de la tabla al nombre original, utilizando el campo "Nombre de la tabla" en la pestaña "Diseño de la tabla". Parece que Excel cambia el nombre de una tabla si se modifica una tabla, por ejemplo, añadir una columna, entonces cuando el modelo de datos intenta actualizar no puede encontrar el nombre original.

0voto

Rajesh S Puntos 11

La posible razón del problema al que te enfrentas:

Se ha corrompido la caché pivotante a la que está vinculada la tabla pivotante.

Solución 1, actualización automática:

  • Haga clic con el botón derecho en cualquier celda de la tabla dinámica.
  • Haga clic en Opciones de la tabla dinámica y, a continuación, en la pestaña Datos.
  • En la sección Datos de la tabla dinámica, añada una marca de verificación a "Actualizar datos al abrir el archivo".
  • Termina con OK.

Solución 2, Borrar y refrescar la caché dinámica en varias hojas de cálculo:

Private Sub Workbook_Open()
    Dim xPt As PivotTable
    Dim xWs As Worksheet
    Dim xPc As PivotCache

    Application.ScreenUpdating = False

    For Each xWs In ActiveWorkbook.Worksheets
        For Each xPt In xWs.PivotTables
            xPt.PivotCache.MissingItemsLimit = xlMissingItemsNone
        Next xPt
    Next xWs
    For Each xPc In ActiveWorkbook.PivotCaches
        On Error Resume Next
        xPc.Refresh
    Next xPc

    Application.ScreenUpdating = True
End Sub

0voto

meggie Puntos 9

Lo escribo porque ya me ha pasado dos veces y las dos veces no he podido encontrar esta respuesta en ningún sitio y nada más me ha funcionado. Las dos veces he resuelto este problema a través de la pestaña Datos > Conexiones, donde puedo eliminar la conexión antigua.

0voto

WeakSquash Puntos 1

Tuve una situación muy similar: el mismo error, pero resultó ser una causa diferente. Los datos estaban siendo referenciados internamente desde una tabla, pero esa tabla no podía ser encontrada por Excel, aunque obviamente ya estaba abierta.

El problema terminó siendo que la versión más nueva del archivo tenía corchetes en el nombre del archivo, que no son caracteres ilegales en Windows pero sí causan problemas.

Cambiando el nombre del archivo y eliminando estos corchetes se resolvió el problema.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X