我有一个谷歌电子表格,看起来像这样。请注意,KeyColumn
值来自有限池。
StartDate EndDate KeyColumn
01/01/2016 05/01/2016 Key1
05/01/2016 10/01/2016 Key2
11/01/2016 20/01/2016 Key1
他们是排序的。下一个StartDate
大于或等于当前EndDate
。
我想要做的是使用一种查找创建以下表格。可以手动创建每个键列。
Date Key1 Key2
01/01/2016 True False
02/01/2016 True False
03/01/2016 True False
04/01/2016 True False
05/01/2016 True True
06/01/2016 False True
对于02/01/2016
, True
为Key1
,因为它位于第一个表中第一行的范围内,其值为Key1
。
05/01/2016
和True
, Key1
为Key2
,因为它位于第一行和第二行的范围内。
这可以在谷歌电子表格中使用而不使用任何脚本吗?我找不到办法。
答案 0 :(得分:1)
答案 1 :(得分:0)
我使用查询函数来解决公式
=iferror(hlookup(B$8,transpose( QUERY({arrayformula(days($A$2:$B$4,)),$C$2:$C$4},"select Col3 where Col1<="& days($A9,) &" and Col2>= " & days($A9,) ,-1)),1,False)=B$8,False)
或
=iferror(hlookup(B$8,transpose(query($A$2:$C$4,"Select C Where toDate(A) < date '" & text(A9, "yyyy-mm-dd") & "' " & " and toDate(B) > date '" & text(A9, "yyyy-mm-dd") & "' ",-1)),1,False)=B$8,False)