システムwiki

特定のワークシートを選択するときにピボットテーブルを更新するためのVBAコード

IForteS 解決済 最終更新日:2021-06-14 17:04

こんにちは

これが私の小さな問題です...私は「注文」ワークシートと「SB_Pivot」ワークシートを持っています.

My "SB_Pivot"ワークシートでは、データを "ORDER"ワークシートからプルする3 Ptがあります.

ユーザーが開くたびに、「SB_PIVOT」ワークシートのAllPivottableを更新します.

これが私のコードです:どういうわけかF5を押すと機能しますが、「SB_Pivot」ワークシートをクリックしたときではありません.

プライベートサブワークシート-アクティブ()
ActiveSheet.pivottables( "sb_plan")リフレッシュtable
ActiveSheet.pivottables( "pivottable1")リフレッシュtable
ActiveSheet.Pivottables( "pivottable2")リフレッシュtable
終了SUB

任意の助けが高く評価されています

ニック

返信リスト(回答:2)

1 #
Sheeloo 1

Pivottableでシートをアクティブにすると、ActiveSheetが依然としてあなたが起動しているシートであるため、コードは機能しませんでした.

次に、コードを含むワークブック内のすべてのピボットtableを更新します.

thisWorkbook.refreshall

2 #
Sheeloo 2

を試してみてください

プライベートサブワークシート-アクティブ()
ワークシート( "sb_pivot")

.pivottables( "sb_plan")リフレッシュtable
.pivottables( "pivottable1")がリフレッシュされた
.pivottables( "pivottable2")RefreshTable

で終わります

終了SUB

上記はCodesheet forsb_pivotシート

になければなりません.