Excel多个条件语句

Hour Daypart From To Daypart Cluster ------------- ------------------------------- 1 Overnight 6 10 Morning 6 Morning 10 15 Midday 15 Afternoon 15 19 Afternoon 20 Evening 19 24 Evening 8 Morning 24 6 Overnight 

我需要指定一个“DayPart”分组(在一个单独的列中)以基于小时的交叉引用表来反映Daypart。

例如,如果Hour > 10, and hour < 15 ,那么集群应该是“正午”

我遇到一个问题,因为我需要考虑其他时间段。

到目前为止,我在Excel中的条件导致错误:

 =IF(AND(H2>$O$2,H2>$P$2,$Q$2),IF(AND(H2>$O$3,H2<$P$3,$Q$3),IF(AND(H2>$O$4,H2<$P$4,$Q$4),AND(H2>$O$5,H2<$P$5,$Q$5)))) 

在这里输入图像说明

您需要将Overnight更改为从0开始,然后转到6,然后将其移至条件的第一行。

我将从一个嵌套的条件语句开始。 如果你从一个单一的条件开始,没有其他人可以满足,那么通过可能性的进步,你只需要每个DayPart的一个条件。 在下面的示例图像中,I2是,

 =IF(H2<6, "Overnight", IF(H2<10, "Morning", IF(H2<15, "Midday", IF(H2<19, "Afternoon", "Evening")))) 

正如你所看到的,在渐进的条件下,只有当第一个是False时才能达到后续条件,根本就不需要To时间。

如果你想使用你的交叉引用表,它需要稍微调整。

DayPart分组

Overnight从0小时开始更改为开始小时,并且将开始小时数从小到大排列,可以使用VLOOKUP函数在上升开始时间内查找近似匹配。 在上面的例子中,J2中的公式是,

 =VLOOKUP(H2, $O$2:$Q$6, 3, TRUE) 

根据需要填写。 正如嵌套小于大于条件一样,在小于和/或小于或等于之间存在一些模糊性。 如果结果不准确,这应该是一个简单的修复。