web-dev-qa-db-ja.com

Excelエラー「ワークブックのテーブルからデータを取得できませんでした...」を修正する方法

MS Excel 2016を使用して次の問題を処理しています。

  • Excelファイルには、巨大なデータテーブルといくつかのピボットテーブルが別々のシートに含まれています。
  • 現在のExcelファイルは、以前のファイルバージョンの新しいファイル名で保存されました。
  • 現在、ピボットテーブルツールの[分析]リボンでピボットテーブルのデータをすべて更新しようとすると、以前のファイルのファイル名を参照する次のエラーメッセージが表示されます。

ブック 'Oldfile.xlsx'の 'Table1'からデータを取得できませんでした。このブックをExcelで開いて、再試行してください。

奇妙なことは:

  1. 私の場合、データテーブルはピボットテーブルと同じファイルにあり、外部接続はありません。
  2. 新しいExcelファイルで以前の(古い)ファイルへの接続を検索すると、接続が見つかりません。
3
Ralph

上記の@meggieの応答の詳細。これは、破損したデータモデル接続に関係していると思います。

  1. エラーメッセージに注意してください。壊れた接続の名前が引用符で囲まれています。
  2. データ->サイドバーを開くためのクエリと接続
  3. [接続]タブをクリックします
  4. 各アイテムにカーソルを合わせて、エラーメッセージの名前と一致するアイテムを探します。削除。

Connections Tab full of connections, one of which was broken

2
StackTheEast

直面している問題の考えられる理由:

ピボットテーブルがリンクされているピボットキャッシュが破損しています。

ソリューション1、自動更新:

  • ピボットテーブルの任意のセルを右クリックします。
  • [ピボットテーブルオプション]をクリックし、[データ]タブをクリックします。
  • ピボットテーブルデータセクションで、「ファイルを開くときにデータを更新する」にチェックマークを追加します。
  • OKで終了します。

ソリューション2、複数のワークシートでピボットキャッシュをクリアして更新:

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
0
Rajesh S

これを今私に2回起こったので、これを書き留めてください。どちらの場合も、[データ]タブ> [接続]でこの問題を解決しました。古い接続を削除できます。

0
meggie