在SUMIFS中使用动态字段/值

时间:2016-02-09 13:58:56

标签: excel sumifs

我有一个从SQL Server刷新的大型DATA表。

示例DATA表,6 x字符串值和5 x数值:

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

= SUMIFS(" qryDATA ["& AD8&"]",qryDATA [AREA],D9,qryDATA [COUNTRY],' EXEC VIEW&# 39;!AC6)

如何从第1个/第2个示例中获取总和字段名称(COSTS)作为单元格引用?

日Thnx

1 个答案:

答案 0 :(得分:1)

试试这个:

=SUMIFS(INDEX(qryDATA,0,MATCH(AD8,qryDATA[#Headers],0)),qryDATA[AREA],D9,qryDATA[COUNTRY],'EXEC VIEW'!AC6)