excel 如何满足多个条件,并返回多个值

初始表格如下:
项目 开始时间 结束时间
A1 2000.1.1 2000.1.5
A2 2000.1.2 2000.1.7
A3 2000.1.3 2000.1.9

然后在另一张sheet中,需要根据时间来引用,表示有哪些项目在这个时间里发生
时间 项目1 项目2 项目3
2000.1.1 A1
2000.1.2 A1 A2
2000.1.3 A1 A2 A3

首先你这个时间格式不对,要改成2000/1/1这样的EXCEL认可的时间格才更方便写公式

用查找--替换的方法把"."替换成"/"

假设初始表的表名为SHEET1,两个表的内容都是在A,B,C,D列

再用公式

=INDEX(Sheet1!$A:$A,SMALL(IF((Sheet1!$B$2:$B$10<=$A2)*(Sheet1!$C$2:$C$10>=$A2),ROW($2:$10),4^8),COLUMN(A1)))&""

数组公式,按下SHIFT+CTRL+ENTER三键结束输入,

右拉复制公式,再下拉复制公式

 

效果如图

这是SHEET1工作表

 

 

另一工作表实现

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-12

时间要用标准格式(半角减号或年月日),不要用小数点。

B2=INDEX(IF((Sheet1!$B$2:$B$4<=Sheet2!$A2)*(Sheet1!$C$2:$C$4>=Sheet2!$A2),Sheet1!$A$2:$A$4,""),COLUMN(A1))

数组公式向下向右复制【数组公式,公式输完后,光标放在公式编辑栏同时按下CTRL+SHIFT+回车键,使数组公式生效】

本回答被网友采纳
第2个回答  2012-12-12
把问题作为内容(邮件主题一定要包含“excel”)、excel样表文件(请特别注意:要03版的(如果是03以后的,把文件“另存为”一下,类型框可以选择03的),把现状和目标效果表示出来)作为附件发来看下 [email protected]