EXCEL用函数筛选出一列中不重复的数据,遇到错误了,求大神解答
公式在SMALL公式时就已经出现错误了,但是我重新根据IF公式生成的结果做small是没问题的,看了半天不知道错误出在哪儿?还有,我想把数列生成的结果变成一行显示(后期做...
公式在SMALL公式时就已经出现错误了,但是我重新根据IF公式生成的结果做small是没问题的,看了半天不知道错误出在哪儿?还有,我想把数列生成的结果变成一行显示(后期做图表方便,不占用太长空间),有没有直接的方法?
在这里做了一下,公式没问题,到底哪里出BUG了,头疼! 展开
在这里做了一下,公式没问题,到底哪里出BUG了,头疼! 展开
展开全部
公式中错误比较多:
引用未加绝对引用符$,下拉时区域不断变化;
维数不同,前面用的是38:53,后面用的是1:10000,这是出错的主要原因;
后面不要用ROW(A1:A10000)来取第几小,虽然结果也不错,但没这必要,ROW(A1:A10000)就指用了行号的第一个ROW(A1),后面的都不用到,只要写这个就可以了,一般用公式时,可以只写行号,不写列标,因为这本身是与列标无关的,比如写成ROW(1:1)这样;
公式可以这样:=INDEX(工作表1!C:C,SMALL(IF(MATCH(工作表1!C$38:C$53,工作表1!C$38:C$53,0)=ROW($38:$53)-37,ROW($38:$53),4^8),ROW(1:1)))&"";
工作表1!C:C取整列,与ROW($38:$53)相呼应,不是从1开始了,如果用:工作表1!C$38:C$53,就必须换成ROW($38:$53)-37或ROW($1:$16);
上面公式中ROW($38:$53)-37,也可以换成ROW($1:$16),这样写只是直接些,方便修改。
展开全部
公式的维度不一致。
输入以下数组公式
=INDEX(工作表1!C:C,SMALL(IF(MATCH(工作表!C$38:C$53,工作表!C$38:C$53,0)=ROW($38:$53)-37,ROW($38:$53),4^8),ROW(A1)))
如果需要转换为行,那么输入以下数组公式
=INDEX(工作表1!$C:$C,SMALL(IF(MATCH(工作表!$C$38:$C$53,工作表!$C$38:$C$53,0)=ROW($38:$53)-37,ROW($38:$53),4^8),COLUMN(A1)))
输入以下数组公式
=INDEX(工作表1!C:C,SMALL(IF(MATCH(工作表!C$38:C$53,工作表!C$38:C$53,0)=ROW($38:$53)-37,ROW($38:$53),4^8),ROW(A1)))
如果需要转换为行,那么输入以下数组公式
=INDEX(工作表1!$C:$C,SMALL(IF(MATCH(工作表!$C$38:$C$53,工作表!$C$38:$C$53,0)=ROW($38:$53)-37,ROW($38:$53),4^8),COLUMN(A1)))
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询