excel 提取户主 A列为空白也就是要提取的户主姓名 B列为地址 C列为地址 D列为与关系(户主,丈夫,妻子)

excel 提取户主 A列为空白也就是要提取的户主姓名 B列为地址 C列为地址 D列为与关系(户主,丈夫,妻子,子女等),现在把地址相同的户主姓名放在A列
A B C D
李四 张三 0001 妻子
李四 李四 0001 户主
王五 王五 0002 户主
王五 陈六 0002 妻子
赵七 0003 户主
黄八 0003 丈夫
希望有个公式可以解决

第1个回答  2013-05-03

A1:

=INDEX(B$1:B$1000,MATCH(C1&"户主",(C$1:C$1000)&(D$1:D$1000),0))

数组公式,三键回车,见图:

追问

我为什么算不出来

追答

你在公式输入后,不能直接按回车,要Ctrl+Shift+Enter三键一起按,Excel会自动在等式两旁加上花括号{}表示是数组公式。另外,这个公式,不需要排序源数据,只是,每户必须有户主。你再试试,祝顺利

第2个回答  2013-05-03
如果我没理解错的话B列应该是名字,而非地址吧!
解决方法:以C列为第一序列,D列为第二序列进行升序排序,户主应该排在其它的前面,
那么A1写公式:=B1
A2写公式=IF(D1="户主",B2,A1)
需要注意的是,如果某个地址没有出现户主的话,会发生错误的!
如果要检查此错误,可以把A2的公式改为:=IF(D1="户主",B2,IF(C2=C1,A1,"错误"))
第3个回答  2013-05-03
A2公式:
=INDEX(C:C,SUMPRODUCT(MATCH(I2&"户主",$I$1:$I$999&$J$1:$J$999,)))

按你发来的表,则是:

=INDEX(C:C,IF(ISERROR(SUMPRODUCT(MATCH(I2&"户主",$I$1:$I$999&$J$1:$J$999,))),SUMPRODUCT(MATCH(I2&"本人",$I$1:$I$999&$J$1:$J$999,)),SUMPRODUCT(MATCH(I2&"户主",$I$1:$I$999&$J$1:$J$999,))))本回答被提问者采纳
第4个回答  2013-05-03
看不懂,能放一行原始数据吗?