我正经历着一场噩梦,试图找到解决这个问题的方法,并希望向导能够为您提供帮助。
在下面的示例中,我有一个数据集(列A至C)和参考列(F至H)。 D列是公式的期望输出。此列已填充我想要的输出示例。
表1。
表1显示了我的数据集。我的目标是在column D
中生成(使用公式)输出,以对rows 2-14
中columns 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。
我不想被一个糟糕的数据集击败。
答案 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), " & "))
答案 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中的行号发生更改,我也对其进行了加固,但是很容易将它们更改为相应的单元格引用(如果需要) -否则原始陈述几乎与所提供的一样。
这是我的结果:
希望有帮助...
祝你好运。
答案 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)