在excel中提取同时满足两个条件所对应的值

下面有2份表格,其中表格1需要引用表格2中的一些数据,表格1中需要根据人名以及日期,提取表格2中他们的上班开始时间以及下班的结束时间,请问应该使用哪个公式

第1个回答  2013-04-26
index跟match的数组公式就可以确定你要的单元格
index(下表的数据区域,match(姓名所在单元格&日期所在单元格,下表数据区域的姓名列&下表数据区域的日期列,0),所要提取的单元格列号)追问

能否提供一下直接的公式,或者我可以把excel直接通过邮箱发给你

追答

比如表1张凯伟正工与4/1交叉那格C2要提取F列的数(4/1是日期格式的)
c2输入=index(表2!$A$2:$H$9999,match($a2&c$1,表2!$A$2:$A$9999&表2!$H$2:$H$9999,0),6)
按ctrl+shift+回车,就会得到表2的F1即9:13

追问

因为还要区分 上班和下班,因此应该有个分辨判定吧 最好能把表格给你,麻烦你直接做好。。。

追答

=index(表2!$A$2:$H$9999,match($a2&c$1,表2!$A$2:$A$9999&表2!$H$2:$H$9999,0),2)就得到08:27

=index(表2!$A$2:$H$9999,match($a2&c$1,表2!$A$2:$A$9999&表2!$H$2:$H$9999,0),3)就得到17:40

公式是麻烦的,不同要求也不同处理
方便就用数据透视吧

追问

根据你给的公式,做出来是显示错误。不知道错在哪里

追答

你表1的那些4/1不是日期吧?

追问

表格格式没问题,包括我更改了日期格式为文本,并设置为1,也是出现错误项,能否加一下QQ详细讨论一下,QQ:55972075

追答

首先,match($a2&c$1

这两个单元格必须要改成你相应的单元格啊,你的实际肯定不是这两个,因为你表1上面空了不少
公式输完后必须按ctrl+shift+enter,三键同时

其次,你表1绿色那行的日期,要保证是2013-4-1这样的输入格式,表2的H列日期也一样格式

再次,公式没加防错,所以若你查找的姓名跟日期在表2中没有的也会出错

第2个回答  2013-04-26
表二可用用数据透视表处理后得到表一。
第3个回答  2015-10-16
举例:
在Sheet1中,在比如G4输入 =A4&“-”&B4,公式复制下去。嫌难看,隐藏该列。
在Sheet2中,在C4输入 =index(sheet1!$c$4:$C$1000,match(A4"-"&B4,sheet1!$G$4:$G$1000,)
就可以了。

使用VLOOKUP函数公式,即可快速查询和提取相应值。
具体步骤:
定位到表二的第2列(例如E3单元格)
使用公式=VLOOPUP(D3,A:B,2,FALSE)

将公式往下拉(鼠标放在单元格右下角,出现黑色加粗的十字符号时,向下拖拉自动填充)

如果不希望有公式,而是只要结果,可以使用选择性粘贴的方法,去除公式。
具体方法:
选中含公式的单元格区域,并复制。
在原处右击单元格
点击”选择性粘贴“
选择”值与数字格式“即可
第4个回答  2013-04-26
用公式很难处理,建议用vba处理较好!
相似回答