【问题标题】:Find the next date before a date with a matched ID number Excel查找具有匹配 ID 号的日期之前的下一个日期 Excel
【发布时间】:2018-01-03 18:31:29
【问题描述】:

我有一个包含 20 万行以上的数据列表。我需要在某个日期之前搜索下一个订单日期,该日期与 Excel 中的 ID 号匹配。我知道我可以使用索引匹配来查找给定日期之前的下一个日期,但是当我需要 ID 号来匹配给定 ID 时,我该怎么做呢?我附上了我正在搜索的数据的示例格式。问题还在于我没有按日期范围搜索,我需要某个日期之前的下一个日期。在给定日期之前有多个日期,我只需要拉之前的一个。

索引匹配公式来查找下一个给定日期。

=INDEX(Orders!B:B, MATCH(MIN(ABS(Orders!B:B-F3)), ABS(Orders!B:B-F3), 0))

ID  Date
1   7/22/2015
2   4/27/2016
3   7/6/2016
2   4/23/2016

【问题讨论】:

  • 出于某种原因,它不允许我附加任何内容。它基本上是 A 列中的 ID 号和 B 列中的日期,然后在另一张纸上,ID 号是 A 列和我需要在该日期之前找到下一个日期的日期,B 列。
  • 您可以将数据作为文本发布,然后使用 Ctrl-K 对其进行格式化。如果这不起作用,只需将数据发布为文本,然后有人会为您设置格式。
  • 身份证日期 1 7/22/2015 2 4/27/2016 3 7/6/2016 2 4/23/2016
  • 使用edit 将其放在原始帖子中,而不是在 cmets 中。
  • 谢谢斯科特。 :)

标签: excel date


【解决方案1】:

另一种表达您的要求的方法是B:B 中找到最大日期,即< F3,并且在A:A 中具有IDE3 中指定的ID 这正是以下公式的作用:

=AGGREGATE(14,6,Orders!B2:B999/(Orders!B2:B999<F3)/(Orders!A2:A999=E3),1)
  • AGGREGATE(14, ...., 1)获取给定数组中的最大值

  • 按条件除法会在不符合条件的数组条目中生成DIV!0

  • 参数6 指示函数忽略错误条目,包括0 的除法

请注意,尽管此公式不需要 CSE,但它是基于数组的,因此请避免使用 full-columns,因为它们会减慢速度。选择足以跨越数据的合理行数(即A2:A999)。

【讨论】:

  • 在正确的上下文中使用maximal这个词的好处(在我用谷歌搜索之前我什至认为它不是一个真实的词)。
  • @Jeeped 哈哈,谢谢。会喜欢奖金来覆盖其他 198 个单词:P
  • 谢谢,这看起来很棒!但是,我无法让它工作。 #NUM!是我收到的错误。
  • @ANN 仅在未找到匹配项时出现。请仔细检查E3F3 中输入的数据和条件。此外,您可能需要&lt;=F3 而不是&lt;F3,这取决于您的最终目标。
  • 是的!你太棒了!非常感谢你。这非常有效,我很高兴能学到新东西。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-04-05
  • 1970-01-01
  • 2013-05-07
  • 2017-01-22
  • 2011-12-06
  • 2021-06-01
  • 1970-01-01
相关资源
最近更新 更多