Всем добрый день! Подскажите пожалуйста, при работе со сводными таблицами через VBA можно ли как либо разделить фильтры из полей строк и столбцов, и общий фильтр сводной таблицы? То есть есть код:
Код
Sub Pivot()
ThisWorkbook.RefreshAll
Dim ws As Excel.Worksheet
Dim pvt As Excel.PivotTable
Dim pvi As PivotItem
For Each ws In ActiveWorkbook.Worksheets
For Each pvt In ws.PivotTables
pvt.ClearAllFilters
For Each pvf In pvt.PivotFields
On Error Resume Next
pvf.PivotItems("(blank)").Visible = False
pvf.PivotItems("").Visible = False
Next pvf
Next pvt
Next ws
End Sub
В данном коде строкой pvt.ClearAllFilters я очищаю все фильтры, а хотелось бы очищать только фильтры столбцов и строк. Более понятно думаю на картинке (во вложении)
Добрый день. Поблагодарить хочу за такой прекрасный сайт и массу полезной информации. Помогите пожалуйста. Я ввел код(считает сумму ячеек с выделенным цветом) Public Function SumByColor(DataRange As Range, ColorSample As Range) As Double Dim Sum As Double Application.Volatile True
For Each cell In DataRange If cell.Interior.Color = ColorSample.Interior.Color Then Sum = Sum + cell.Value End If Next cell SumByColor = Sum End Function И создал второй модуль с кодом где изменил (считает кол-во ячеек с выделенным цветом) Sum = Sum + 1 Все считает отлично, но...возникли трудности со 2 модулем, когда ячейка с нулевым значением и ее не нужно брать, подскажите что нужно изменить. Спасибо
Ametist69 написал: PivotTable(1).RowFields.Clear не подходит.
То есть по ссылкам не ходили и описаний не читали? Нет такого объекта PivotTable, нет метода Clear у коллекции RowFields. Например так
Код
Public Sub test()
Dim pField As PivotField, pItem As PivotItem
For Each pField In ActiveSheet.PivotTables(1).RowFields
pField.VisibleItemsList = Array("")
Next
End Sub