【发布时间】:2016-07-15 22:31:24
【问题描述】:
我在计算列中有这个公式,效果很好:
=IFERROR(INDEX(Allocation_of_Funds[[#Headers],[End.Nursing]:[Unassigned14]],MATCH(TRUE,INDEX(Allocation_of_Funds[@[End.Nursing]:[Unassigned14]]>0,0),0)),"")
但是这个公式给我带来了麻烦,它代表了我在下一个计算列中想要的内容,(基于上面上一列中的值)但它返回一个#REF!错误:
=INDEX(INDIRECT("Allocation_of_Funds[[#Headers]"&"["&[@[SOURCE 1]]&"]"):[@Unassigned14],MATCH(TRUE,INDIRECT("Allocation_of_Funds[[#Headers]"&"["&[@[SOURCE 1]]&"]"):[@Unassigned14]>0,0),0)
表格设置的详细信息如下,以防有帮助:
我有一个包含一系列列的表格,每列代表不同类型的帐户。对于每一行,这些列的任何组合都可以包含值或空白,因此我还有另一组列,我想为每条记录的非空白列标识表列标题。
SOURCE1 | SOURCE2 | SOURCE3 | ACCT1 | ACCT2 | ACCT3 | ACCT4 | ACCT5
ACCT1 | ACCT2 | ACCT4 | 500 | 300 | | 100 |
ACCT2 | ACCT3 | | | 200 | 100 | |
ACCT3 | | | | | 500 | |
| | | | | | |
ACCT3 | ACCT4 | ACCT5 | | | 200 | 300 | 50
ACCT1 | ACCT3 | ACCT4 | 123 | | 332 | 100 |
所以我需要 SOURCE2 列来使用 SOURCE1 列中的值来识别我正在寻找具有值的下一个单元格的范围的开始,从而将为 SOURCE2 行返回高于该值的列标题价值。相同的公式将应用于 SOURCE3 列,使用 SOURCE2 列的值来标识下一个范围的开始。
提前感谢您挑选您的大脑!
-林赛
【问题讨论】:
-
寻找最多 3 个来源?前三个来源?如果 acc7 和 acct 9 都有数字,那么您的表格中的预期结果是什么?
-
我将有 5 个源列。是的,前 5 个来源。五个带有记录数据的帐户将被高估。大多数记录将只有一个带有数据的Acct 列,而有些记录将有2 或3 个。4 和5 不是预期的,但包括它们以备将来可能的扩展。该范围中有 50 多个帐户列。如果 Acct7 和 Acct9 都有非空格,那么 Source1 和 Source2 将返回“Acct7”和“Acct9”的值。
-
问题在于我希望表头范围以与另一个单元格中的值同名的表头开头:Allocation_of_Funds[[#Headers],[VALUE OF ANOTHER CELL HERE] :[Unassigned14]]
-
帐户栏的最大数量是多少?如果相邻帐户中有数字,会发生什么?
-
最多 73 个帐户列。
标签: excel excel-formula excel-2013