【问题标题】:Thinking I need an "=IF" statement认为我需要一个“=IF”语句
【发布时间】:2018-08-24 13:55:13
【问题描述】:

我有一张超过 6000 行的表格。该表每个新兵有 2 行。我需要一个公式,它将在 M 列中搜索“Y”,找到后,将返回一个单元格的值,该单元格向左 5 列,从所述“Y”向上一行。有这样的公式吗?

Sample Image

我想要的结果是(在新工作表上)任何地方都有“Y”表示预约,我将返回“Y”下方的行中的值。

我希望这能澄清我的问题。

谢谢!!!

【问题讨论】:

  • 请模拟一些数据和预期的输出。使用edit将其作为纯文本表格插入原始帖子中。
  • 您可以尝试使用 match() 的 offset() 函数,但是对于这样的数据量,当您更改某些内容时,它可能会阻塞所需的重新计算...

标签: excel-formula


【解决方案1】:

将返回的'向左5列向上1行'偏移。

=index(h$1:h$6999, match("Y", m$2:m$7000, 0))

得到第一个但只有第一个。要获取第一个、第二个、第三个等。使用聚合而不是匹配提供 k 参数的 row(1:1) 并向下填充。

=index(h:h, aggregate(15, 6, row($1:h$6999)/(m$2:m$7000="Y"), row(1:1)))

【讨论】:

    猜你喜欢
    • 2012-09-10
    • 2021-03-19
    • 1970-01-01
    • 2013-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-05
    • 1970-01-01
    相关资源
    最近更新 更多