Исключение промежуточных итогов в нескольких полях строк

Если вы создадите несколько полей строк, программа Excel автоматически добавит промежуточные суммы практически для всех этих полей, за исключением внешнего поля строки. Это поле будет полезным в случае, если вы планируете повторно использовать полученные с помощью сводной таблицы результаты в качестве источника данных для других целей.

В рассматриваемом примере на основе исходных 87000 строк данных была получена состоящая из 50 строк сводка по продажам за год, отсортированная по категориям оборудования и регионам. После удаления строк общих и промежуточных итогов полученный набор данных можно сортировать и фильтровать, а также на его основе можно создавать диаграммы. Несмотря на то что вручную исключить промежуточные суммы довольно просто, VBA-код, требуемый для выполнения этой задачи, неожиданно оказывается весьма сложным.

Многие пользователи даже не подозревают о том, насколько просто вывести несколько типов промежуточных итогов. Например, как показано на рис. 12.13, можно одновременно отобразить промежуточные итоги с применением функций Сумма, Среднее, Минимум и Максимум. Это свойство можно применять при анализе цен, если вы желаете, например, электрогитара купить.

Рис. 12.13. С помощью редко используемого переключателя другие можно определить несколько промежуточных итогов для одного поля

Рис. 12.13. С помощью редко используемого переключателя другие можно определить несколько промежуточных итогов для одного поля

Для исключения промежуточных итогов свойству Subtotals следует присвоить массив из 12 значений False. Первое значение False отключает автоматические промежуточные итоги, второе значение False — промежуточный итог Сумма, третье значение False отключает промежуточный итог Количество и т.д. Ниже показана строка кода для исключения промежуточного итога Категория оборудования.

1
2
3
РТ.PivotFields("Категория оборудования").Subtotals = _
Array(False, False, False, False, False, False, _
False, False, False, False, False, False)

Второй метод состоит во включении первого промежуточного итога. При этом 11 других промежуточных итогов автоматически отключаются. Отключите первый промежуточный итог, дабы убедиться в том, что все промежуточные итоги отключены.

1
2
PT.PivotFields("Категория оборудования").Subtotals  (1)   = True
PT.PivotFields("Категория оборудования").Subtotals  (1)   = False

Для исключения строки общего итога используется следующий код:

1
PT.ColumnGrand = False
Top