我在Google和这些论坛上的研究失败了(或者我的问题措辞不当),我试图做的是从图片中的表格中找到所有出现-1的地方,并列出A列和第1行的相应值。
我现在可以使用以下公式列出A列中的值:
=IFERROR(INDEX($A$2:$A$8,SMALL(IF($B$2:$G$8=-1,ROW($B$2:$G$8)-1),ROW(1:1))),"")
它返回:
但是,我没有找到任何公式可以准确地检索第1行的值。我们的目标是:
2uluyalo1#
只需将其添加到条件中,并使用COLUMN()作为返回值,使用COUNTIF作为k。
=IFERROR(INDEX($B$1:$G$1,SMALL(IF(($B$2:$G$8=-1)*($A$2:$A$8=J2),COLUMN($B$2:$G$8)-1),COUNTIF($J$2:J2,J2))),"")
dfty9e192#
这种方法会溢出预期结果,同时包括两列:
=LET(sports, B1:G1, names, A2:A8, data, B2:G8, DROP(REDUCE("", names, LAMBDA(ac,n, LET(f, FILTER(data, names=n), ff, TOCOL(FILTER(sports, f=-1,"")), IF(@ff="", ac, VSTACK(ac, HSTACK(IF(ff=ff, n), ff)))))),1))
下面是输出:
t1rydlwq3#
Excel 365中使用Tocol忽略错误值的另一种方法:
=LET(Name,A2:A8, Sport,B1:G1, data,B2:G8, Names,IF(data=-1,Name,NA()), Sports,IF(data=-1,Sport,NA()), HSTACK(TOCOL(Names,2),TOCOL(Sports,2)))
3条答案
按热度按时间2uluyalo1#
只需将其添加到条件中,并使用COLUMN()作为返回值,使用COUNTIF作为k。
dfty9e192#
这种方法会溢出预期结果,同时包括两列:
下面是输出:
t1rydlwq3#
Excel 365中使用Tocol忽略错误值的另一种方法: