我正在尝试建立一个MATCH公式(或类似的公式),该公式将返回与特定年份匹配的范围内的第一个值(日期)的位置。
例如,如果我有一个日期列表,例如:
A
1 12-31-2014
2 11-30-2015
3 12-29-2016
4 12-30-2017
对于值2016,它应该返回3。
MATCH(2016,A:A,0)
不起作用,因为它不完全匹配。我也不能使用任何辅助列,也不能修改日期。
有什么想法吗?
答案 0 :(得分:1)
是否允许使用数组公式?如果是这样,它可能像这样简单:
=IFERROR(MATCH(2016,YEAR($A$1:$A$4),0),"No Match")
请记住使用 Ctrl + Shift + Enter 提交答案,因为它将是一个数组。
您需要在YEAR
函数中更改引用以匹配您的范围。通过使用 0 作为您的[match_type]
参数,您将获得列表中第一个年份为 2016 的值。
答案 1 :(得分:0)
有关真实日期,请尝试
=aggregate(15, 6, row($1:$999)/(year(a$1:a$999)=2016), 1)
'return the date with index as,
=index(a:a, aggregate(15, 6, row($1:$999)/(year(a$1:a$999)=2016), 1))
如果您可以按升序使用它们,
=MATCH(42369, A:A)+1
=index(a:a, MATCH(42369, A:A)+1)
有关看起来像日期的字符串列表,请尝试
=MATCH("*2016", A:A, 0)
=index(a:a, MATCH("*2016", A:A, 0))