0

これは私がかなり定期的に遭遇するシナリオであり、解決しようとするのではなく、回避しました。

次のワークシートを含むコントロール ワークブックがあります。

ここに画像の説明を入力

ワークブックには、シート「Data」のデータである名前付き範囲「myData」があります。

データを取得して「データ」に貼り付け、範囲のVBA名前を変更してから、名前付き範囲をソースとして使用するピボット テーブルを更新します。次に、ルーチンはシートArray("Pivot", "Data", "notes")を新しいワークブックにコピーし、別の場所に「NewWorkbook.xlsx」として保存します

NewWorkbook を開いてピボットのデータ ソースを見ると、元のコントロール ワークブックを参照しています。

ピボットが新しいワークブックのデータを参照していることを確認する簡単な方法はありますか? 名前付き範囲を使用すべきではありませんか?

4

2 に答える 2

1

ピボットキャッシュのソースデータを更新する必要があります

Sheets(Array("Data", "Pivot", "notes")).Copy
With ActiveWorkbook.Sheets("Pivot").PivotTables(1)
    .PivotCache.SourceData = "myData"
    .RefreshTable
End With

例えば

于 2013-06-04T09:32:04.980 に答える