У меня есть две формулы, как показано ниже:Как изменить GETPIVOTDATA() динамически
=GETPIVOTDATA("Sum of Values",'Input Data'!$A$4,"State",Q42,"Route",$S$1,"STAT_COMB",$G$37,"SHA",$G$35)
=GETPIVOTDATA("Sum of Values",'Input Data'!$A$4,"State",Q42,"Route",$S$1,"STAT_COMB",$G$37)
Основное различие во второй формуле, я не рассматриваю параметр «SHA». Учесть это или нет, зависит от другого значения ячейки. Я могу написать условие if, чтобы выбрать формулу соответственно. Но проблема в том, у меня есть другая ситуация, как это:
=GETPIVOTDATA("Sum of Values",'Input Data'!$A$4,"Route",Q42,"STAT_COMB",$G$37)
Здесь я не рассматриваю «государство» и параметр «SHA», который зависит от соответствующих различных клеток, следует ли рассматривать или нет.
Аналогично, каждая пара [Поле], [Пункт] Пара в формуле зависит от того, могут ли они включать их или нет.
Написание слишком много, если условия сделают формулу громоздкой. Итак, мне интересно, есть ли способ динамически опустить пары [Field], [Item] в формуле.
Я мог бы использовать INDIRECT внутри getpivotdata(), но INDIRECT выбирает только одно значение, но мне нужно пару значений для каждого параметра.
Выделение двух столбцов для поля и элемента и позволяет пользователям выбирать необходимые поля из списка DropDown List, например, 10 строк данных. То же самое может быть закодировано из excel vba, и одно условие If() будет проверять наличие пустых ячеек, и то же самое будет повторяться для остальных циклов. – Sixthsense
Почему вы не пытаетесь поместить условия в другую ячейку (сравнения), а затем косвенно коснуться этих сравнений для сводной таблицы? Или используйте AND (условие1, условие2), чтобы делать больше сравнений. – Matt
@Pramod Вы просмотрели мой ответ? Если мой ответ не сработает - мне бы хотелось получить обратную связь, чтобы мы могли либо уточнить ответ, либо продолжить. –