#Value for Excel 在公式生成器中显示正确结果的小函数
#Value for Excel Small function which shows correct result in formula builder
我正在编写一个公式来获取 table 中某个日期的行号。
我有2个excel工作表,Sheet1包含的数据如下:
A B
1 Date Value
2 21/2/2018 3
3 22/2/2018 4
4 22/2/2018 1
5 23/2/2018 2
Sheet2 具有以下内容(单元格 C1 包含我要查找的日期):
A B C
1 <my formula> 22/2/2018
2
我的公式是 =SMALL((IF(Sheet1!$A$1:$A$5=$C$1,ROW(Sheet1!A$1:A$5))),ROW(A$1))
在公式生成器中,它按预期显示 3,因为 22/2/2018 的第一个实例位于第三个单元格中。但是单元格(sheet2 上的 A1)正在返回 #value。
试试这个数组公式。
=SMALL(IF(Sheet1!A:A=H, ROW(Sheet1!:)), ROW(1:1))
'alternately as a standard formula
=AGGREGATE(15, 6, ROW(Sheet1!:)/(Sheet1!A:A=H), ROW(1:1))
使用 ctrl+shift+enter 完成,而不仅仅是输入。 G2是一个标准的INDEX公式。
=INDEX(B:B, F2)
我正在编写一个公式来获取 table 中某个日期的行号。
我有2个excel工作表,Sheet1包含的数据如下:
A B
1 Date Value
2 21/2/2018 3
3 22/2/2018 4
4 22/2/2018 1
5 23/2/2018 2
Sheet2 具有以下内容(单元格 C1 包含我要查找的日期):
A B C
1 <my formula> 22/2/2018
2
我的公式是 =SMALL((IF(Sheet1!$A$1:$A$5=$C$1,ROW(Sheet1!A$1:A$5))),ROW(A$1))
在公式生成器中,它按预期显示 3,因为 22/2/2018 的第一个实例位于第三个单元格中。但是单元格(sheet2 上的 A1)正在返回 #value。
试试这个数组公式。
=SMALL(IF(Sheet1!A:A=H, ROW(Sheet1!:)), ROW(1:1))
'alternately as a standard formula
=AGGREGATE(15, 6, ROW(Sheet1!:)/(Sheet1!A:A=H), ROW(1:1))
使用 ctrl+shift+enter 完成,而不仅仅是输入。 G2是一个标准的INDEX公式。
=INDEX(B:B, F2)