当前位置: 首页 > 知识库问答 >
问题:

GoogleSheets索引匹配日期范围之间的最接近值

武向文
2023-03-14

在Google Sheets中,我试图使用Excel中的索引匹配返回与日期范围之间最小绝对最近值关联的帐户名。

=ARRAYFORMULA(INDEX(B2:B,MATCH(MIN(ABS(C2:C-$G$5)),ABS(C2:C-$G$5),(A2:A>=G2)*(A2:A<=G3))))

以下是数据值:

  • A列是评估的日期范围

以下是一些虚拟数据的示例:

现在这个公式起作用了。。。索塔。它将返回与最小绝对最近值关联的帐户名,但不从以下指定的日期范围返回:

(A2:A>=G2)*(A2:A<=G3)

这是返回帐户“A”,因为它是第一个值,最接近猜测值,但它超出了G2和G3指定的日期范围。

从这个例子中应该返回的正确答案是“C”,来自单元格B4。

我对这个公式做错了什么?

谢谢

共有1个答案

刘乐童
2023-03-14

match()的第三个参数应该是-1、0或1。所以基本上(A2:A

=arrayformula(
   index(
     filter(B2:B, A2:A >= $G$2, A2:A <= $G$3), 
     match(
       min(abs(filter(C2:C, A2:A >= $G$2, A2:A <= $G$3) - $G$5)), 
       abs(filter(C2:C, A2:A >= $G$2, A2:A <= $G$3) - $G$5), 
       0
     )
   )
 )

我测试了它,它起作用了。样品表在这里。

 类似资料:
  • 问题内容: 我需要填充一个表,该表将存储2个给定日期之间的日期范围:09/01/11-10/10/11 因此,在这种情况下,该表将从2011年9月1日开始存储,直到每天存储到10/10/11,我想知道在SQL Server中是否有一种巧妙的方法-我目前正在使用SQL Server 2008 。 谢谢 问题答案: 在SQL 2005+上很容易;如果您有数字表或理货表,操作会更容易。我在下面伪造了它:

  • 我有一个大约为100GB的cosmos数据库。我成功地创建了一个漂亮的分区键,我在70M记录上有大约4600个分区,但是我仍然需要查询两个存储为字符串的日期时间字段,而不是纪元格式。 示例json: 我注意到当我做中选择*以及当我做

  • 我有一张表,上面有房间的开始和结束日期。我写了这个SQL: 这些房间在这段时间内是有效的。但是,当我这样过滤的时候, 我没有结果。这些日期就像一个数组: 所以,你可以看到那个房间在2022-12-30是活动的,但我不能得到它。我怎么能那样做? 希望我能很好地表达自己。

  • 问题内容: 我的数据库中有以下一组匹配日期的日期(dd / MM / yyyy): 事件具有开始和结束日期(时间无关紧要),并且endDate为NULL表示事件仍在进行中。 我想确定的是两个任意日期之间的日期范围,其中a)没有事件,b)事件重叠。 因此,对于输入日期范围01/04/2009-30/06/2009,我希望得到以下结果: 注意,作为结果,两个相邻的重叠范围是可以接受的。 谁能用SQL算

  • 问题内容: 这个问题已经在这里有了答案 : 从日期范围生成天数 (29个答案) 7年前关闭。 我想显示a 和MySQL中的日期之间的所有日期。 例如,具有和字段的表中的数据为: 日期是和 日期, 我想要的结果是: 如何仅使用MySQL查询来实现此目的(而不必使用存储过程,因为我对此并不熟悉)? 编辑: 尽管我仍然没有完全得到想要的结果,但是这里的答案很有帮助。在此示例中,它仅成功运行,但不输出任何

  • 问题内容: 如何在MySQL中的日期范围之间选择数据。我的专栏是24小时的祖鲁时间格式。 尽管在这些时间段之间有数据,但不返回任何内容。我是否必须强制 “发件人” 和 “发件人” 字段中的值键入查询? 问题答案: 您需要更新日期格式: