如何按数据透视表中的值 return header
How to return the header by value in a PivotTable
我有一个这样的数据透视表:
Sum of Gf_Amount | Column Labels
| 2015 | | | | Grand Total
Row Labels | 17-Mar | 18-Mar | 19-Mar | 20-Mar |
3601 | 20 | 20 | | | 40
10386 | 35 | | | | 35
76301 | 5 | | | | 5
80941 | | | | 10 | 10
205738 | | | 5 | | 5
219576 | | 15 | | | 15
Grand Total | 60 | 35 | 5 | 10 | 110
我想要做的是根据值找到最后一个 non-empty 列和 return 日期。例如:对于 ID 3601
,结果应该是 2015 18-Mar
。
目前我知道如何使用 =LOOKUP(9.99E+307,B6:E6)
找到最后的 non-empty 列。对于 ID 3601
,它给了我 20
,这是正确的。但是当我使用:
=INDEX($B:$E,MATCH(LOOKUP(9.99E+307,B6:E6),B6:E6,0))
找到 header,它给了我 17-Mar
,这是 第一个 20
对应的 header。再说了,我写的公式连年份都不能给我。
任何人都可以帮助我找到日期和年份吗? (它不一定要在数据透视表中。您可以将其复制并粘贴到普通 table 中。)
我猜您的列标签是格式为 dd-mmm
的日期索引,因此无需查找显示的 2015
因此:
=INDEX(:,MATCH(1E+100,A6:E6))
格式如 dd-mmm-yyyy
并且大概复制下来可能适合。
MATCH 函数的一个特点(也许从来没有真正打算过),如果没有可选参数,它在列表中找不到匹配的地方它 returns 的索引列表中的最后一个条目——有时非常有用,就像这里一样!所以所有的“大数字”(它有很多版本——例如你使用的那个 9.99E+307
)所做的就是输入 MATCH 一个大到永远不可能找到它的数字(强制选择最后一个入口)。
我喜欢1E+100
,一个googol,因为它简短易记,而且它的“推导”。 9.99E+307
理论上更好,因为更接近 Excel 可以处理的最大数字:
9.99999999999999E+307
但是
10,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,0,00,0[0,00,0]0,00,0[0,0,0]
对我来说已经足够大了——我不希望使用比这个更大但小于或等于 9.99E+307 的数字。
我有一个这样的数据透视表:
Sum of Gf_Amount | Column Labels
| 2015 | | | | Grand Total
Row Labels | 17-Mar | 18-Mar | 19-Mar | 20-Mar |
3601 | 20 | 20 | | | 40
10386 | 35 | | | | 35
76301 | 5 | | | | 5
80941 | | | | 10 | 10
205738 | | | 5 | | 5
219576 | | 15 | | | 15
Grand Total | 60 | 35 | 5 | 10 | 110
我想要做的是根据值找到最后一个 non-empty 列和 return 日期。例如:对于 ID 3601
,结果应该是 2015 18-Mar
。
目前我知道如何使用 =LOOKUP(9.99E+307,B6:E6)
找到最后的 non-empty 列。对于 ID 3601
,它给了我 20
,这是正确的。但是当我使用:
=INDEX($B:$E,MATCH(LOOKUP(9.99E+307,B6:E6),B6:E6,0))
找到 header,它给了我 17-Mar
,这是 第一个 20
对应的 header。再说了,我写的公式连年份都不能给我。
任何人都可以帮助我找到日期和年份吗? (它不一定要在数据透视表中。您可以将其复制并粘贴到普通 table 中。)
我猜您的列标签是格式为 dd-mmm
的日期索引,因此无需查找显示的 2015
因此:
=INDEX(:,MATCH(1E+100,A6:E6))
格式如 dd-mmm-yyyy
并且大概复制下来可能适合。
MATCH 函数的一个特点(也许从来没有真正打算过),如果没有可选参数,它在列表中找不到匹配的地方它 returns 的索引列表中的最后一个条目——有时非常有用,就像这里一样!所以所有的“大数字”(它有很多版本——例如你使用的那个 9.99E+307
)所做的就是输入 MATCH 一个大到永远不可能找到它的数字(强制选择最后一个入口)。
我喜欢1E+100
,一个googol,因为它简短易记,而且它的“推导”。 9.99E+307
理论上更好,因为更接近 Excel 可以处理的最大数字:
9.99999999999999E+307
但是
10,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,0,00,0[0,00,0]0,00,0[0,0,0]
对我来说已经足够大了——我不希望使用比这个更大但小于或等于 9.99E+307 的数字。