请教数据有效性的问题:公式countif应用

来源:百度知道 编辑:UC知道 时间:2024/06/18 05:33:22
表格中,在数据有效性中用自定义“=countif(A:A,A1)=1”将A列设为不允许重复,且A列为文本格式,当A1输入0302010101303743765,A2输入0302010101303743848时,总是报错,说输入值非法,不知为何?请大侠、高手们帮忙分析一下,万分期待和十万分感谢!
为了找出原因,我新打开了一个表格,将A列设为文本格式,在A1中输入0302010101303743765,在A2中输入0302010101303743848,在B1中输入公式=countif(A1:A2,A2),回车后显示值为2,不知为何?为什么EXCEL将两个值判断为一样的值呢?劳请各位大侠,高手们指点一下,不吝感谢。

因为虽然已经设置了为文本格式,
但函数 countif()还是把以文本形式存在的数字做为数值进行计算,
这样一来,Excel里如果数字超出16位,其余的就会舍去不计,
就造成了你这种情况,

所以要解决问题的话,只能换个函数.
比如 match()函数,也能实现不允许重复的功能.
在数据有效性自定义里的公式为:

=MATCH(A1,A:A,0)=ROW(A1)

.