2

国のリストがあるドロップダウンがあります。ドロップダウンで選択した国に基づいてピボット テーブルをフィルター処理する必要があります。私はこのコードを使用しています。

Sub PivotChange(ByVal Target As Range)

 If Not Application.Intersect(Target, Sheets("Summary").Range("D7")) Is Nothing Then
 Sheets("Data_4PivotChart").PivotTables("PivotTable7").PivotFields("Country"). _
    ClearAllFilters
Sheets("Data_4PivotChart").PivotTables("PivotTable7").PivotFields("Country").CurrentPage _
    = Sheets("Summary").Range("D7").Value
 End If

End Sub

しかし、現在は何もしていません。イベントによってトリガーされるように、このコードをどこに追加すればよいでしょうか。

ありがとう

4

4 に答える 4

0

ピボット テーブルの「レポート フィルター」機能をご存知ですか。ピボット テーブルをフィルタリングするドロップダウンです。カスタム ドロップダウンは必要ありません。ここでそれについて読むことができます:

http://office.microsoft.com/en-us/excel-help/use-a-report-filter-in-a-pivottable-or-pivotchart-report-HP010167854.aspx#BMdisplay_a_different_set_of_values_in_

ここもまた:

http://www.contextures.com/Excel-Pivot-Table-Report-Filters.html

編集:

複数のピボット テーブルを制御するには、スライサーを使用できます。

http://blog.contextures.com/archives/2011/03/07/filter-multiple-pivot-tables-with-excel-2010-slicers/

もう一度編集:

これは、ピボット テーブルが同じデータ ソースを共有している場合のみです。

単一のスライサーを使用して、Excel でデータ ソースが異なる 2 つのピボット テーブルを制御する

4番目の編集:

ドロップダウンを使用して、そのセルにワークシート変更イベントを設定する必要があります。イベントは、ピボット テーブル フィルター マクロを実行します。

http://support.microsoft.com/kb/213612

于 2013-07-25T21:06:50.077 に答える
0

これと同じ問題がありましたが、VBA マクロを使用しない方が簡単に回避できます。地域ごと、会社ごと、部門ごと、マネージャーごとに販売されたモバイル デバイスのソース リストと、ルービック キューブのような複数のピボット テーブルを使用して報告する必要があるモバイル デバイスに関するその他のさまざまなフィールド情報がありました。ソース リストにはさまざまな販売日が含まれていましたが、クライアントは先週の販売のみを求めていました。つまり、各ピボット テーブルのフィルタ ドロップダウン ボックスから報告する週を手動で選択する必要があり、これは苦痛で時間のかかる作業でした。すべて更新を選択する前に。

解決策は次のとおりです。ソース リストに列を作成し、使用する基準を入力します。私の場合、TRUE/FALSE 評価基準で MAX 関数を使用して、レコードが最新の週に該当するかどうかを調べました。したがって、この列に TRUE/FALSE フラグのリストが表示されます。次に、ピボット テーブル フィルターで TRUE を選択すると、ピボット テーブルは自動的に true 条件にフィルターされます。

于 2016-08-12T10:31:41.563 に答える