比较两个数字范围,判断第一个数字是否与第二个数字重叠

比较两个数字范围,判断第一个数字是否与第二个数字重叠

我是 Excel 新手,需要用它写一篇科学论文。我正在尝试优化我的数据库数据收集工作流程。

我的文件http://cid-1662ba2be7d0ee4e.skydrive.live.com/redir.aspx?resid=1662BA2BE7D0EE4E!144

我需要将“开始”和“结束”列创建的范围与黄色方块内的不同范围进行比较,并在“共定位”列中输出开始-结束范围是否仅与第一个值重叠(是 - 开始),仅与第二个值重叠(是 - 结束),与两者重叠(是 - 两者)或仅包含(是 - 包含)。如果不满足任何条件,则输出“否”。

这对于 Excel 来说是不是太复杂了?

谢谢!

顺便说一句:我将这个问题标记为 Excel 2010,因为这是我在家里使用的,但是如果您知道如何在早期版本中执行此操作,我也很乐意接受该答案。

答案1

这里有一个解决方案:

首先对工作表布局进行小幅更改(范围 F2:G11 中的值)

From            To  
                    0  
        0    27800000  
 34400000    46500000  
 51000000   102000000  
107000000   117600000  
120700000   153300000  
154800000   163800000  
171200000   174300000  
184000000   247200000  
999999999   999999999

添加 4 个中间结果列(我使用了 I、J、K、L)

添加公式

I2    =MATCH(A2,$F$2:$F$11,1)      
J2    =MATCH(A2,$G$2:$G$11,1)+1
K2    =MATCH(B2,$F$2:$F$11,1)
L2    =MATCH(B2,$G$2:$G$11,1)+1

将这些复制到数据中的所有行

公式共定位细胞

D2   =IF(AND(I2=J2,I2=K2,I2=L2),"Yes - Contained",IF(AND(I2=J2,K2=L2),"Yes - Both",IF(I2=J2,"Yes - Start",IF(K2=L2,"Yes - End","No"))))

为了满足“是 - 中间”的附加条件,请在公式中添加另一个条件,以测试是否跨越从/到范围

D2 =IF(AND(I2=J2,I2=K2,I2=L2),"Yes - Contained",IF(AND(I2=J2,K2=L2),"Yes - Both",IF(I2=J2,"Yes - Start",IF(K2=L2,"Yes - End",IF(AND(I2+1=J2,K2+1=L2,I2<K2),"Yes - Middle","No")))))

相关内容