2017-09-15 90 views
-2

我有数据的2片材具有以下标题比较2个时隙之间从片1的时隙2

SHEET 1:

NetID | TimeSlot | SlotName 

SHEET 2:

NetID | StartTime| EndTime | SlotName 

SO我需要做这些事情:

  • 如果时间槽(S heet1)介于StartTime & EndTime(工作表2)和NetID(工作表1)== NetID(工作表2) - >然后填写相应的SlotTime(工作表2)INTO Sheet1的SlotName列。

任何人都可以帮助我吗? 请参考我上载的数据

SAMPLE DATA I'm USING

+0

欢迎来到SO。你试过什么了? – yacc

+1

欢迎来到Stack Overflow。你已经尝试过这么做了吗?请回顾[预计需要多少研究工作?](https://meta.stackoverflow.com/questions/261592/how-much-research-effort-is-expected-of-stack-overflow-users)。堆栈溢出不是一种编码服务。问题应该只在你研究了你的问题后发布,并且应该包括迄今为止解决它的尝试,[最小,完整和可验证的例子](https://stackoverflow.com/help/mcve)和一个清晰的提纲的具体问题。 – FluffyKitten

回答

0

所有你需要确保你使用的时间格式跨两片洽首先的更好的视野的照片。不要一边使用9点,另一边使用09:00:00。使用以下格式:HH:mm:ss。

其次,在您的示例中,第一张工作表中的一个NetID在第二张工作表上没有匹配。 (GHI <> IJK)。我认为这是一个错误。如果不是,下面的公式将返回一个错误。

最后,答曰:

=IF(AND(B1>=INDEX(Sheet2!B:B,MATCH(A1,Sheet2!A:A,0)),B1<=INDEX(Sheet2!C:C,MATCH(A1,Sheet2!A:A,0))),INDEX(Sheet2!D:D,MATCH(A1,Sheet2!A:A,0))) 

,如果你打破它,了解它看起来像这样:

=IF (

条件检查第一片时隙之间在第二张纸上定义的相关时间范围:

AND(
B1>=INDEX(Sheet2!B:B,MATCH(A1,Sheet2!A:A,0)), 
B1<=INDEX(Sheet2!C:C,MATCH(A1,Sheet2!A:A,0))) 

注意:MATCH(A1,Sheet2!A:A,0)help在第二张纸上定义哪个范围是相关的。 并以相同的逻辑输出返回时隙的名称:

INDEX(Sheet2!D:D,MATCH(A1,Sheet2!A:A,0)) 
+0

你好丹!非常感谢你 - 看起来不错。我会尝试一下。 – Mitz

+0

尽管 - NetID - 在这两张表中都不是相同的顺序 - 我必须做一个Vlookup(或其他)来获取值。如果NetID的顺序不一样,我是否可以通过任何方式获得Sheet 1中的SlotName? – Mitz

+0

这里没有必要做一个vlookup。 Match功能将使您能够知道时间段在哪一行。索引函数将返回它。这是这两个功能的组合,可以满足您的要求。 – Dan