Предполагая, что вы хотите знать кол-видимых элементов, а не только из всех элементов, а затем перебора каждого элемента, чтобы проверить .Visible статуса на сегодняшний день самого простым способом. Но это может занять некоторое время: за сообщение, которое я написал некоторое время назад в http://dailydoseofexcel.com/archives/2013/11/14/filtering-pivots-based-on-external-ranges/, требуется всего одна минута и двадцать секунд, чтобы прочитать .visible статус PivotField с 20 000 предметов в нем. Многие из сводных таблиц, с которыми я легко работаю, имеют такое количество элементов в них, поэтому, когда я пишу код, который должен работать на , любой PivotField Я не использую этот подход.
Поэтому, если ваш PivotField имеет много элементов, менее простой - но потенциально гораздо более быстрый - путь, чем прекрасный подход Дуга выше, состоит в том, чтобы сделать копию сводной таблицы, удалить/отфильтровать каждое поле, но представляющее интерес, изменить макет этого поля в PageField, а затем подсчитайте, сколько строк оно занимает.
Я обычно делаю две копии сводной таблицы, и использовать одну из них, чтобы определить, что видно в поле, а другой для определения
- Что (если что-нибудь) фильтруется, но не отображается из-за к применяемым фильтрам на других PivotFields; и
- Что (если что-нибудь) не фильтруется и не видно
Код для достижения этой цели является довольно сложным, и часть коммерческой надстройки, я в здании, так что я могу не поделиться Я боюсь.
Pramod: Вы так «отредактировали» свой вопрос, что теперь это совершенно другой вопрос, и в результате не соответствуют приведенным ниже ответам. Предложите вернуть свои изменения и задать новый вопрос. – jeffreyweir
Привет @jeffreyweir Спасибо за предложение. Я разместил здесь новый вопрос: http://stackoverflow.com/questions/38753567/how-to-access-pivot-items-of-a-pivot-field-which-is-present-in-report-filter -usi Я знаю, что после редактирования вопроса я не имел никакого смысла. Я ценю ваш комментарий вместо того, чтобы опрокидывать мой вопрос. – Pramod