在Excel中录入数据时,为了提高录入效率,用户往往希望能够在录入关键数据后自动录入其他对应的数据。实现这种快速录入的方法很多,本文介绍在Excel中使用公式来实现数据快速录入的3种方法。
1、启动Excel并打开工作簿,工作簿中“工资表”的结构如图1所示。打开“统计表1”工作表,选择B3:I20单元格区域,在编辑栏中输入公式“=IF($A3="","",VLOOKUP($A3,工资表!$A:$I,MATCH(B$2,工资表!$2:$2,0),0))”,按Ctrl+Enter键结束公式输入。在A3单元格中输入员工编号,则其右侧相应单元格中将自动输入对应的信息,如图2所示。
图1 “工资表”的结构
图2 使用VLOOKUP()函数和MATCH()函数获得信息
提示
MATCH()函数可以在单元格区域中搜索指定项,并返回该项在单元格区域中的相对位置。VLOOKUP()函数可以搜索单元格区域的第一列,然后返回该区域相同行上单元格中的值。在这里,使用MATCH()函数在“工资表”的第2行获取对应字段的位置列号,使用VLOOKUP()函数在“工资表”的A列搜索对应的员工编号并返回编号所定义行的信息,这样就可以实现输入编号后的信息自动录入。
2、打开“统计表2”工作表,选择B3:I20单元格区域,在编辑栏中输入公式“=IF($A3="","",HLOOKUP(B$2,工资表!$A$2:$I$20,MATCH($A3,工资表!$A$2:$A$20,0),01)”,按Ctrl+Enter键结束公式输入。在A3单元格中输入员工编号,则其右侧的单元格中自动录入其他信息,如图3所示。
图3 使用HLOOKUP()函数和MATCH()函数获取信息
提示
HLOOKUP()函数在表格或数值数组的首行查找指定的数值,其可以在表格或数组中指定行同一列中返回一个数值。其与VLOOKUP()函数的区别在于,其是在数据区域的首行搜索值,返回同一列第N行的值;而VLOOKUP()函数是在数据区域的首列搜索值,返回同一行第N列的值。在这里,使用MATCH()函数在“工资表”的A列搜索员工编号的位置行号,使用HLOOKUP()函数在“工资表”的第2行搜索列字段,返回对应列字段及其信息,这样就可以实现输入编号后的信息自动录入。
3、打开“统计表3”工作表,选择B3:I20单元格区域,在编辑栏中输入公式“=INDEX(工资表!$A:$I,MATCH($A3,工资表!$A:$A,0),MATCH(B$2,工资表!$2:$2,0))”,按Ctrl+Enter键结束公式输入。在A3单元格中输入员工编号,则其右侧的单元格中自动录入其他信息,如图4所示。
图4 使用INDEX()函数和MATCH()函数获取信息
提示
INDEX()函数可以返回表格或区域中的值或对值的引用。这里使用两个MATCH()函数分别获取员工编号和列字段的位置列号,然后使用INDEX()函数来引用行列号交叉区域的单元格的内容,这样就可以实现输入编号后的信息自动录入。