巧用Excel批量对比数据
数字办公
每个月公司的会计都会从财务管理软件中把数据库中一个月的数据导出生成Excel,然后用每天的单据与导出的表中的数据进行比较,核对数据是否正确。上述方法比较繁琐,笔者有更简单的方法,通过两个Excel表自动对比,智能得到结果以便核对。下面就来看看怎么操作。
首先导出数据,这个导出的Excel表由4列组成。这4列分别是“单号”、“部门”、“员工编号”和“金额”(图1)。

会计按照同样的格式做一张单据表并手工输入单据信息,用来和导出的表比较差异。对比的要求是在“单号”、“部门”、“员工编号”都相等的情况下比较“金额”是否相同。如果相同的话提示“金额相同”,否则显示“金额不同”;如果“单号”、“部门”、“员工编号”有一个不相等则应该提示“查无此单”。
在导出的表中第A列前新插入一列,在新插入的列的A2中输入公式 :=B2&"_"&C2&"_"&D2(第一行为标题行所以没有数据)。
小提示:公式的意思是把“单号”、“部门”、“员工编号”通过下划线“_”联接起来组成一个新的字符串。因为“单号”是唯一的,所以拼起来的这个字符串不会有重复。
然后在数据区拖拉填充公式,为每一“单号”都建立一个这样的字符串。用同样的方法在单据表中生成一个这样的列。在导出的表中,新建一个Sheet2的工作表,把单据表中的数据复制到导出表的Sheet2中。
接着在Sheet1中按“F2”键输入公式:=IF( ISERROR(VLOOKUP(A2,Sheet2!$A$2:$A$46,1,FALSE)), “查无此单”,IF(EXACT(E2,VLOOKUP(A2,Sheet2!$A$2:$E$46,5,FALSE)),“金额相同”,“金额不同”) ) ,确定即可(图2)。

小提示:VLOOKUP函数是Excel中的查找函数,它的语法是VLOOKUP(lookup_value,table_array,col_index_num,range_lookup),其中lookup_value表示要查找的值;table_array表示要查找的区域; col_index_num为table_array 中待返回的匹配值的相对列序号。最左列为1,其右边一列为2,依此类推;range_lookup为一逻辑值,为FALSE时函数 VLOOKUP 进行精确匹配查找,否则是近似匹配查找。