易表在线答疑技术与交流用户社区 → [求助]不重复个数


  共有6003人关注过本帖树形打印复制链接

主题:[求助]不重复个数

帅哥哟,离线,有人找我吗?
iyplx2425
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
[求助]不重复个数  发帖心情 Post By:2015/3/5 11:01:00 [只看该作者]

计算某行中从N1列到Nn列中不重复数据的个数,用什么函数?谢谢。

 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2015/3/6 8:23:00 [只看该作者]

这个问题不会没有答案吧?

 回到顶部
美女呀,离线,留言给我吧!
dancedy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:2721 积分:4555 威望:0 精华:0 注册:2011/5/12 17:20:00
  发帖心情 Post By:2015/3/9 9:25:00 [只看该作者]

参考

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:字符不重复.egd


 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2015/3/10 9:01:00 [只看该作者]

3楼公式好像有错,我作如下改动。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:字符不重复.egd


 


 回到顶部
美女呀,离线,留言给我吧!
dancedy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:2721 积分:4555 威望:0 精华:0 注册:2011/5/12 17:20:00
  发帖心情 Post By:2015/3/10 11:55:00 [只看该作者]

我测试3楼公式没问题,是错在哪里的?

4楼公式如果修改数据或有些列数据为空无法得到正确统计,你测试看看

 

直接比较参考:

if([第二列] <> [第一列],1,0) + if([第三列] <> [第一列] And [第三列] <> [第二列],1,0) + if([第四列] <> [第一列] And [第四列] <> [第二列] And [第四列] <> [第三列],1,0) + if([第五列] <> [第一列] And [第五列] <> [第二列] And [第五列] <> [第三列] And [第五列] <> [第四列],1,0) + if(Aggregate(4,Row,1,Row,5) < 5,0,1)


 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2015/3/10 14:20:00 [只看该作者]

那就是对数据重复的理解不一样。我把为空的单元格也算做是一个数据的,所以算出的结果有不同。如果按三楼公式的理解,4楼公式就得加上一条,如果有为空的数据,就减1。

 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2015/3/10 16:13:00 [只看该作者]

4楼公式做如下修正(空格计算在内时):

Eval("IF([第一列] = [第" +Substitute("二|三|四|五","|","列] Or [第一列] = [第") + "列],0,1)") + Eval("IF([第二列] = [第" +Substitute("三|四|五","|","列] Or [第二列] = [第") + "列],0,1)") + Eval("IF([第三列] = [第" +Substitute("四|五","|","列] Or [第三列] = [第") + "列],0,1)") + IF([第四列] = [第五列],0,1)  + 1

如果空格不计在内,则按如下公式:

IF(Aggregate(4,Row,"第一列",Row,"第五列") = 5,Eval("IF([第一列] = [第" +Substitute("二|三|四|五","|","列] Or [第一列] = [第") + "列],0,1)") + Eval("IF([第二列] = [第" +Substitute("三|四|五","|","列] Or [第二列] = [第") + "列],0,1)") + Eval("IF([第三列] = [第" +Substitute("四|五","|","列] Or [第三列] = [第") + "列],0,1)") + IF([第四列] = [第五列],0,1) + 1,Eval("IF([第一列] = [第" +Substitute("二|三|四|五","|","列] Or [第一列] = [第") + "列],0,1)") + Eval("IF([第二列] = [第" +Substitute("三|四|五","|","列] Or [第二列] = [第") + "列],0,1)") + Eval("IF([第三列] = [第" +Substitute("四|五","|","列] Or [第三列] = [第") + "列],0,1)") + IF([第四列] = [第五列],0,1))


 回到顶部