我有一个像这样的excel表;应该定期填充。
01.16 02.16 03.16 04.16 05.16 06.16
Amy 5.6 6.2 7.2 7.6 0
Bob 7.3 7.8 0
Cindy 6.2 6.8 7.8
我正在尝试创建一个公式,该公式将告诉我最新的一组“完整”非零结果是什么。在这种情况下,我希望它说一些类似
的内容 02.16
Amy 6.2
Bob 7.8
Cindy 6.8
我有类似的作品:
B6 = index(B1:G1,1,min(COUNTIFS(B2:G2,"<>0",B2:G2,"<>"),COUNTIFS(B3:G3,"<>0",B3:G3,"<>"),
COUNTIFS(B4:G4,"<>0",B4:G4,"<>"))
B7 = INDEX(B2:G4,MATCH(A8,$A$2:$A$4,0),MATCH($B$7,B1:G1,0))
但是我确实觉得它很麻烦,并希望看看是否有人对如何简化它有想法?
答案 0 :(得分:0)
假设您的数据集位于单元格A1:G4中:
您可以使用SUMPRODUCT公式查看哪个“列”为您提供完整的结果(请记住,Excel还将空单元格也视为零):
=SUMPRODUCT(($B$2:$G$2<>0)*($B$3:$G$3<>0)*($B$4:$G$4<>0))
该公式的当前结果为2。现在,您知道应该使用哪一列,然后可以将其与INDEX组合以提取值:
只需记住更新每个公式中的row_num参数以获得正确的结果(每月1个,艾米2个,鲍勃3个,辛迪4个):
=INDEX($B$1:$G$4,1,SUMPRODUCT(($B$2:$G$2<>0)*($B$3:$G$3<>0)*($B$4:$G$4<>0)))
例如,对于Cindy,您需要使用以下公式:
=INDEX($B$1:$G$4,4,SUMPRODUCT(($B$2:$G$2<>0)*($B$3:$G$3<>0)*($B$4:$G$4<>0)))
希望它对您有用。