私はVBAコードで私のExcel文書のスライサーを変更しようとしています。これまでのところ私はすべてについてちょうど試みたと私は常に同じエラーで終わる:VBA関数(1004エラー)からのExcelの更新スライサー
Run-time error '1004':
Application-defined or object-defined error
ここに私の現在のVBAコードがあります。
Sub SelectSlicerValue(ByVal SlicerName As String, ByVal slicerVal As String, ByVal isSelected As Boolean)
ActiveWorkbook.SlicerCaches(SlicerName).SlicerItems(slicerVal).Selected = isSelected
End Sub
'Selects slicer values to display only data for 17-year old male students
Sub SelectMale17Profile()
SelectSlicerValue "Slicer_Age1", "17", True
End Sub
私は動的に選択したフィルタを変更することができるよ前にスライサーの読み取り/書き込みプロパティを有効にする必要があることを、私はどこかで読んだと信じています。私はこれをどのようにして行うのですか?あなたのピボットテーブルは、外部ソースからデータを取得している場合
私にとってはうまくいきます。 1をtrueに設定するときも、restをfalseに設定します。また、外部ソースからデータを取得するPivotテーブルもありますか? –
@SiddharthRout - あなたの返信をありがとう! はい、私はSQLデータベースに接続するためにpowerpivotを使用しています。これは問題ですか、またはVBAでスライサーを変更することはまだ可能ですか? – TobiasKnudsen
@Ralph、ご返信ありがとうございます!私はあなたの例をダウンロードし、それが私がそれをしたいのとまったく同じように働いていますが、自分のプロジェクトでそれを動作させることはできません。 SiddharthRoutが彼のコメントでそれについて尋ねたので、私のピボットテーブルが外部ソースに接続されているので、私はそれを推測しています。ピボットテーブルがSQLサーバーに接続されている場合でも同じ効果を得ることができますか? – TobiasKnudsen