Использование динамических полей / значений в СУММЕСЛИМН

У меня есть одна большая таблица данных, которая обновляется с SQL Server.

Пример таблицы DATA, 6 строковых значений и 5 числовых значений:

AREA | COUNTRY | CATEGORY | SALES GROUP | AAA | BBB | SALES $ | COSTS | VAL1 | VAL 2 | VAL 3

У меня есть вторая таблица SUMMARY с несколькими столбцами, которые соответствуют именам полей в таблице DATA. Они разбиты, поэтому вы можете видеть сводные значения на разных уровнях:

BREAKDOWN                 | SALES $ | COSTS | VAL1 | VAL 2 | VAL 3

EUROPE                      SUMIFS | SUMIFS | SUMIFS|SUMIFS|SUMIFS
 - ENGLAND
 -  - SMALL BUSINESS
 -  -  - Joe Green
 -  -  - Molly Mongers
 -  -  - Patent Felicity
 -  - CORPORATE
 -  - MAJOR
 - FRANCE
 - GERMANY
 - AUSTRIA

У меня есть оператор SUMIFS, который я хочу сделать более динамичным, чтобы он ссылался на имена столбцов для получения разных данных:

=SUMIFS(qryDATA[COSTS],qryDATA[AREA],"Europe",qryDATA[COUNTRY], "France")

Я могу изменить Criteria VALUES, чтобы они были динамическими:

=SUMIFS(qryDATA[COSTS],qryDATA[AREA],D9,qryDATA[COUNTRY],'EXEC VIEW'!AC6)

Но если я попробую сделать то же самое с полем SUM или CRITERIA FIELDS, я получу сообщение об ошибке (не приму запись {С этой формулой возникла проблема}). AD8 содержит текст COSTS:

= СУММЕСЛИМН ("qryDATA [" & AD8 & "]", qryDATA [ОБЛАСТЬ], D9, qryDATA [СТРАНА], 'EXEC VIEW'! AC6)

Как я могу получить имя поля суммы (ЗАТРАТЫ) из 1-го / 2-го примеров в качестве ссылки на ячейку?

Спасибо


person aSystemOverload    schedule 09.02.2016    source источник
comment
Что именно вы спрашиваете. Для СЧЁТЕСЛИМН столбец должен быть выбран либо с использованием заголовка, как вы, либо с использованием диапазона (AD1: AD100). Выбор AD8 в столбце CMMTD_TOTAL не имеет смысла   -  person Ben Rhys-Lewis    schedule 09.02.2016
comment
Я думаю, он имеет в виду, что ячейка AD8 будет содержать строку, такую ​​как CCMMTD_TOTAL, чтобы пользователь мог просто определить поле таблицы в одной ячейке (AD8).   -  person Jordan    schedule 09.02.2016
comment
@JordanBiddlecombe правильно, тогда я могу скопировать формулу, и он подберет каждый из заголовков над формулой, вытащив соответствующие имена полей в таблице DATA: SALES $ | РАСХОДЫ | VAL1 | ВАЛ 2 | VAL 3 и т.д ...   -  person aSystemOverload    schedule 09.02.2016


Ответы (1)


Попробуй это:

=SUMIFS(INDEX(qryDATA,0,MATCH(AD8,qryDATA[#Headers],0)),qryDATA[AREA],D9,qryDATA[COUNTRY],'EXEC VIEW'!AC6)
person Jordan    schedule 09.02.2016
comment
Видите ли, я ожидал такого нестандартного мышления от StackOverflow. Идеально. Большое спасибо. - person aSystemOverload; 09.02.2016