excel如何实现满足某些条件输出指定单元格的内容(非if函数)

首先,不要说IF函数,我要处理的数据比较多,IF函数多层嵌套公式太长了,我想寻求简单一点的方法。我的具体想法如下:1.我要做的表格如下图,我们可以看到,在O这一列中有一些文字。2.如果某一格文字含有六星、疑似偷本或越位过多、平推对位或越级平推,则输出前面的游戏ID。3.要求数据输出到Sheet2中,Sheet2的内容看第二个图。4.如果此人满足六星、疑似偷本或越位过多、平推对位、越级平推中的多个条件,则在所有单元格都输出ID。举个例子,第23行的人既是六星,又是平推对位,则在最终的战绩中,六星和平推对位的表格里都有他。5.只统计上述所说的几种。其他文字(如玩家已不在部落)不作处理。6.文字中有括号的,要求输出游戏ID和括号中的内容,如第22列要求在Sheet2的B4单元格输出“chunchun(David)(第二次出手)”,A3单元格输出“平推对位”。7.我们注意到Sheet2中B系列的每一个单元格都需要输出多个ID,所以不同的ID之间用中文逗号连接。要求比较多,我发布之后会尽量提高悬赏,感谢大神!

在Sheet2的B3单元格输入以下数组公式,按Ctrl+Shift+Enter组合键,然后向右向下填充公式
=INDEX(Sheet1!$A:$A,SMALL(IF(FIND($A3,Sheet1!$O$4:$O$2000),ROW($4:$2000),4^8),COLUMN(A1)))&""追问

粘贴以后显示"#VALUE",填充以后也不能用啊

这个公式还需要进行其他的修改吗

追答

在Sheet2的B3单元格输入以下数组公式,按Ctrl+Shift+Enter组合键,然后向右向下填充公式
=INDEX(Sheet1!$B:$B,SMALL(IF(ISNUMBER(FIND($A3,Sheet1!$O$4:$O$2000)),ROW($4:$2000),4^8),COLUMN(A1)))&""

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-06-20
函数没显示本单元格数值本单元格写函数没数值写数值没函数加辅助列吧