Excel:检查两个值是否在两个其他值之间

时间:2018-07-31 01:24:54

标签: excel excel-formula

我正经历着一场噩梦,试图找到解决这个问题的方法,并希望向导能够为您提供帮助。

在下面的示例中,我有一个数据集(列A至C)和参考列(F至H)。 D列是公式的期望输出。此列已填充我想要的输出示例。

表1。

Dataset 1

表1显示了我的数据集。我的目标是在column D中生成(使用公式)输出,以对rows 2-14columns B & C中的数据是否属于{{1}中参考数据集的开始和结束参数进行分类}。如果为true,则公式应返回columns G & H中存在匹配项的行号,如column F所示。

使用column D公式,只要B&C的开始和结束分别为IF(AND(>= to G,我就能弄清楚该怎么做,但对于我的生活弄清楚了如果第3行的开始和结尾部分不在第1行之外的话该怎么做。例如:<= to H

如以下=IF(AND(B2>=$G$2,C2<=$H$2),$F$2,IF(AND(B2>=$G$3,C2<=$H$3),$F$3,"<null>"))中所述,第1行显示了'G2:H2'中描述的边界,而第2行显示了'G3:H3'中描述的边界。我的目标是查看第3行和第4行是否与第1行或第2行重叠,并输出如“ D列”所示的变量。任何帮助将非常感激。谢谢。

图1。

Figure 1

我不想被一个糟糕的数据集击败。

5 个答案:

答案 0 :(得分:2)

另一个

=IF(NOT(OR(OR(AND(B2>=S$2,B2<=T$2),AND(C2>=S$2,C2<=T$2)), OR(AND(B2>=S$3,B2<=T$3),AND(C2>=S$3,C2<=T$3)))), "<null>", 
    SUBSTITUTE(TRIM(IF(OR(AND(B2>=S$2, B2<=T$2), AND(C2>=S$2, C2<=T$2)), 1, TEXT(,))&CHAR(32)&
                    IF(OR(AND(B2>=S$3, B2<=T$3), AND(C2>=S$3, C2<=T$3)), 2, TEXT(,))), CHAR(32), " & "))

enter image description here

答案 1 :(得分:2)

功能齐全,尽管有点冗长。

protected $listen = [
        \Illuminate\Auth\Events\Login::class => [
            MyListener::class,
        ],
    ];

答案 2 :(得分:2)

疏忽之处在于不检查所讨论的行(B&C)的可能性 跨越了其他两个线段。另外,此检查需要首先完成:

IF(AND(B12>=L1Start,B12<=L1End,C12>=L2Start,C12<=L2End),"1 & 2",IF(AND(B12>=L1Start,B12<=L1End),1,IF(AND(B12>=L2Start,B12<=L2End),2,"<null>")))

出于可读性考虑,我将开始和停止单元格命名为L1Start和L1End,L2Start和L2Endals,除非Col F中的行号发生更改,我也对其进行了加固,但是很容易将它们更改为相应的单元格引用(如果需要) -否则原始陈述几乎与所提供的一样。

这是我的结果:

enter image description here

希望有帮助...

祝你好运。

答案 3 :(得分:1)

解决方案:

单元格D2:在Mac中为=IF(AND(OR(AND((B2<$G$2);(C2>$G$2));AND((B2>$G$2);(B2<$H$2)));OR(AND((B2<$G$3);(C2>$G$3));AND((B2>$G$3);(C2<$H$3))));"1 & 2";IF(OR(AND((B2<$G$2);(C2>$G$2));AND((B2>$G$2);(B2<$H$2)));"1";IF(OR(AND((B2<$G$3);(C2>$G$3));AND((B2>$G$3);(C2<$H$3)));"2";"<null>")))

单元格D2:在Windows中为=IF(AND(OR(AND((B2<$G$2),(C2>$G$2)),AND((B2>$G$2),(B2<$H$2))),OR(AND((B2<$G$3),(C2>$G$3)),AND((B2>$G$3),(C2<$H$3)))),"1 & 2",IF(OR(AND((B2<$G$2),(C2>$G$2)),AND((B2>$G$2),(B2<$H$2))),"1",IF(OR(AND((B2<$G$3),(C2>$G$3)),AND((B2>$G$3),(C2<$H$3))),"2","<null>")))

很明显,您必须复制到D14为止,并且只应更改B和C单元的行。

答案 4 :(得分:1)

认为,如果您要添加更多行,则缩放比例会更好

enter image description here