返回

实务交流

发帖

根据票号核对净利润小妙招

Excel不加班楼主

2018-09-14 13:59:20 320 2

作为会计,经常会处理金额核对的问题。为了保证数据的准确性,对于某些数据,通常不止一个人录入。这样,月底的时候,就会根据不同人录入的结果进行核对。


会计录入的数据


卢子录入的数据,现在要根据票号将会计录入的净利润引用过来,并进行核对。


源文件下载:

https://pan.baidu.com/s/1Wd-uzcr4Yh7FlgD0ydlZCw


看到这里,80%的人会想到借助VLOOKUP函数进行查找,一起来看看这种方法是否合适?


在C2输入公式,下拉,发现全部都是错误值。

=VLOOKUP(A2,会计!A:B,2,0)


会计录入的票号带绿帽子就是文本格式,卢子录入的右对齐没有绿帽子就是常规格式,不同格式,VLOOKUP函数是不能直接查找,需要统一格式。


将公式略作修改,就可以将常规格式转变成文本格式,从而进行查找。

=VLOOKUP(A2&"",会计!A:B,2,0)


这里又出现一个新问题,如何让没有对应值的显示0呢?


需要再嵌套一个IFERROR函数。

=IFERROR(VLOOKUP(A2&"",会计!A:B,2,0),0)


好,以上就是80%的人会想到的方法,剩下20%的人会想到用什么呢?


用SUMIF函数取代VLOOKUP函数,这样轻而易举的解决掉格式不同以及让错误值显示0两个问题,公式更加简洁!

=SUMIF(会计!A:A,A2,会计!B:B)


好,现在净利润已经引用过来,接下来就是核对数据。


在D2输入公式下拉,这时出现了一个问题,100居然不等于100,怎么回事?

=IF(B2=C2,"相同","不同")


打开会计这个表,发现100,原来是99.9999999999854。


作为会计,差一分一厘都是不允许的,同样,Excel也认死理,只要有一点点不一样,就认为不同。


针对这种情况,起码说了100次,跟金额有关的,全部在外面嵌套一个ROUND函数。

=IF(ROUND(B2,2)=ROUND(C2,2),"相同","不同")


到此,问题就解决了。

作者:卢子,清华畅销书作者;个人公众号:Excel不加班(ID:Excelbujiaban)

豹大神1楼

2018-09-14 14:47:54
赶快来了解一下吧~