2015-07-22 5 views
0

Привет, ребята Я хочу передать переменную в фильтр значений для сводной таблицы. Я экспериментирую с кодом ниже, но он дает мне ошибки. Какие-либо предложения. Я пытаюсь установить x varibale в Value1Excel VBA передать переменную в параметр сводной таблицы

Sub Macro1() 
' 
' Macro1 Macro 
' 
x = "*" + Range("Sheet1!h17").Value + "*" 


    ActiveSheet.PivotTables("PivotTable2").PivoJtFields("Note").ClearAllFilters 
    ActiveSheet.PivotTables("PivotTable2").PivotFields("Note").PivotFilters.Add _ 
     Type:=xlCaptionContains, Value1:=x 
End Sub 
+0

Какие ошибки вы получаете? –

ответ

1

Опечатка? (PivoJtFields). И убедитесь, что вы находитесь на листе со сводной таблицей, а таблица имеет правильное имя.

Попробуйте

x = "*" + Range("Sheet1!h17").Value + "*" 

Dim PT As PivotTable 
Set PT = ActiveSheet.PivotTables("PivotTable2") 

Dim PT_PivotFieldNote As PivotField 
Set PT_PivotFieldNote = PT.PivotFields("Note") 

PT_PivotFieldNote.ClearAllFilters 
PT_PivotFieldNote.PivotFilters.Add xlCaptionContains, Value1:=x 
Смежные вопросы