我在Excel 2010中使用结构化表格。
在表“P”中,我有多个标记为1a,1b,1c,2a,2b,3a的列...... 数据是一些数值。
在表“Q”中,我想要标记为1,2,3的列,并且每个列应该具有相应的列组中表“P”的值的总和。那就是:
所有这些都应该按行进行。
首先,我试图更简单地做一些事情并引用当前行中的单个单元格。通过阅读documentation,我尝试了以下内容:
=P[[#This Row],[1a]]
但即使这样也会导致一些我不理解的公式错误。
更新
使用SUMIF,我设法非常接近我想要的东西:
=SUMIF(P[#Headers]; "1a"; P[@])
如果我能以某种方式获取测试的标头值并将其插入SEARCH
函数 - 我将能够完成我需要的工作。
答案 0 :(得分:0)
您可以使用SUMPRODUCT
:
=SUMPRODUCT((LEFT(P[#Headers],P[#Headers]-1)="1")*P)
(LEFT(P[#Headers],P[#Headers]-1)="1")
将返回一个数组,该数组将表P中的哪些标题包含1
作为第一个整数。然后,这将用于确定表中的哪些列进行总结。
LEFT(P[#Headers],P[#Headers]-1)
返回标头中的整数。它基本上删除了每个标题中的最后一个字符,并在上述情况下将其与1
进行比较。