代码之家  ›  专栏  ›  技术社区  ›  Ron Moger

Excel:在另一个工作表中规定的给定时间后,尝试从一个工作表返回详细信息

  •  0
  • Ron Moger  · 技术社区  · 6 年前

    我的问题如下:我有第1页和第2页。在第2页中,我粘贴了一份报告,其中详细说明了某些生产运行的时间,因此我们有一列显示产品名称,然后另一列显示每分钟。如果产品是在这段时间内创建的,它将在相邻的列中命名。 表1显示了产品名称和生产运行开始时间。它从第二张中提取开始时间,如下所示:=索引(Sheet2!$B:$B,MATCH(I12,Sheet2!$A:$A,0)) 此代码返回产品名称出现时第一次出现的代码,表示产品已开始生产。

    问题:在进行第二次运行之前,这一切正常。代码只是返回第一个实例,而不是第二个实例,因此我希望它说“查找此运行的第一个实例,但只在前一个单元格中提到的时间之后开始搜索”。i、 e.取上一次生产的结束时间,然后开始搜索”。应该注意的是,每次生产运行之间可能存在间隙,因此我们不能假设下一次运行在第一次运行之后立即开始。

    感谢您的帮助:)

    1 回复  |  直到 6 年前
        1
  •  0
  •   Variatus    6 年前

    你需要一个数组公式,例如,

    =INDEX(Sheet2!$B:$B,MATCH(1,(Sheet2!$A:$A=$I12)*(Sheet2!$B:$B>$J11),0))
    

    必须同时按Ctl+Shift+Enter来确认数组公式(而不是按常规的单数Enter来确认常规公式)。

    在本例中,产品名称在I12中,最后一次生产结束时间在J11中。如果J11为空,则公式将其计算为零,并返回第一个生产开始时间,与当前公式相同。