我是 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")))))