私はちょっと読んでいて、SO点を聞いてきました。私は名前を変更することができるExcelのドロップダウンセレクタを持っています。名前が変更されると、 "C3"の値が変更されます(C3が別のシート上の別のセルを参照します)。別のシート(今の場合は6)にピボットテーブルを作成して、地域IDでそのフィルタを更新して、新しい値「C3」を反映させます。セル内の値が変更されてピボットテーブルのフィルタが変更されるとき
私にはイベントのように聞こえるので、掘り起こしてVBAイベントがあることがわかりましたが、実際に何かをするイベントを得ることができませんでした。私がそこに持っているコードは、マクロとして実行すると動作しますが、セル "C3"の値が変わるたびに自動的に実行するようにしたいと思います。
Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Sheets("Current Status").Range("C3")) Is Nothing Then
Sheets("Sheet6").PivotTables("PivotTable5").PivotFields("territory_id"). _
ClearAllFilters
Sheets("Sheet6").PivotTables("PivotTable5").PivotFields("territory_id").CurrentPage _
= Sheets("Current Status").Range("C3").Value
End If
End Sub
アップデート:私はシート部分(シート2)ではなく、新しいモジュールに上記のコードを入れた場合、私はそれを得ることができることを私が発見したがここで
は、私がこれまでにしようとしていますものです物理的にコードを入力してEnterキーを押すと実行されます。今私は手動で値を入力してEnterキーを押すことなくそれを行う方法があるかどうか疑問に思っています。ドロップダウンセレクタがピボットテーブルを更新するため、c3の値が変更されたとき、新しい名前を選択するためにドロップダウンメニューを使用できるようにしたいだけです。
いつもありがとうございます。
どこにコードを入れましたか?モジュールやシートで? – Sam
私はモジュールで最初にそれを持っていました。シートに入れてから、変化する値を持つセルの代わりにドロップダウンセレクター(@Scottのおかげで)をターゲットにする必要があることを理解しました。 – asjohnson