excel同一行用什么公式查重,并提示“重复”二字?

如图举例:制表原因是做一个人员值班表,担心同一天人员被重复排班,所以想在F列写个公式提示该行有单元格内容重复。我在F4单元格使用的公式是 =IF(COUNTIF(B4:E4,B4:E4)>1,"重复","") ,但明明同行的“张三”是重复的,为什么没提示呢?是公式错了吗?

COUNTIF(B4:E4,B4:E4)得到的结果是一个数组,由4个数字组成的数组,如图中的第4行,得到的是{2,1,1,2},且公式必须是数组公式才能得到数组结果。根据前面的分析,相信应该明白,还要加上取4个数字中的最大数来判断是否大于1才能得到结果了:
=IF(MAX(COUNTIF(B4:E4,B4:E4))>1,"重复","")
同时按Ctrl+Shift+Enter三键输入数组公式
或者
=IF(SUM(COUNTIF(B4:E4,B4:E4))>4,"重复","")
本问题更合适的方法是设置数据验证(早期版本中称为数据有效性),选择B4:En
n为可能要输入数据的最大行数
数据菜单——数据——数据工具——数据验证,在数据验证对话框中,允许中选择“自定义”,公式中输入:
=COUNTIF($B4:$E4,B4)<2
确定。
这样在一行排班某个人第2个输入时,因为不满足数据验证的条件(COUNTIF大于1了),就会禁止输入,从根本上阻止重复排班。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-09
按下面修改试试:
=IF(MAX(COUNTIF(B4:E4,B4:E4))>1,"重复","")
数组公式(按三键)。
注:简单点另可以用:条件格式。
第2个回答  2019-10-09

要使用数组公式,例如:

相似回答