返回首页
当前位置: 主页 > Word教程 > Word2013教程 >

Excel 制作任选项目的查询系统(2)

时间:2015-04-21 13:35来源:Office教程学习网 www.office68.com编辑:麦田守望者

方法二、VLOOKUP函数

大家应该比较习惯于使用VLOOKUP查询吧?虽然VLOOKUP只能按首列查询,但这不是问题。我们只要在员工记录表前面增加一列辅助列来实时显示要查询列的内容,同样可以轻易实现任选列查询。

在“员工记录”工作表中,选中A列右击选择“插入”在A列前插入一个空列。在A1单元格输入公式=HLOOKUP(查询!A$2,B:M,ROW(),FALSE)。选中A1:A2000区域按Ctrl+D组合键把A1公式复制填充到A1:A2000单元格,即可在A列显示要查询列的内容。由于我们在查询工作表的A2输入的是姓名所以现在显示的是姓名列(图4)。至于具体需要向下填充到第几行请参照记录表准备存储的记录数考虑。此外,若不想影响原表视图可在设置好后选中A列右击选择“隐藏”隐藏A列。

201202-asw-任选查询04

回到“查询”工作表,按一般VLOOKUP函数的用法,在B4输入公式=VLOOKUP($B$2,员工记录!$A:$M,2,FALSE)。同样在B5:B10、D4:D8单元格中都输入这个公式,不过要把公式中的2顺次改成3、4……13以分别显示相应列的内容(图5)。现在试试在A2选择列标题,输入查询内容,也一样能找到记录吧。

201202-asw-任选查询05

总结,用VLOOKUP缺点是需要添加辅助列,当增加记录行时得把辅助列的公式复制下来才能查询到。优点是当列数、列标题变化时无需再做任何修改仍可正常使用。OFFSET优点是不影响人员记录表,增加记录行无需做任何修改。缺点是当用于查询的列标题改变时得选中列重新定义名称后方可正确查询。两种方法各有优劣,大家可按表格特点、个人习惯选择适合的方法。

注:现在虽然可以在A2单元格中选择任何一列进行查询,不过除员工编号、姓名、身份证号、联系电话外,对其它列的查询符合的可能不只一项,而不管是VLOOKUP还是OFFSET函数都只能显示第1条符合的记录,其它记录就找不到了。对此,可以限制只能按员工编号、姓名、身份证号、联系电话等具有唯一性的列进行查询。方法是在查询界面中为B2设置“数据有效性”时,把输入的来源改为“员工编号,姓名,身份证号,联系电话”即可(不含引号,各选项间以半角的逗号分隔)。

------分隔线----------------------------
标签(Tag):excel excel2007 excel2010 excel2013 excel2003 excel技巧 excel教程 excel实例教程
------分隔线----------------------------
推荐内容
猜你感兴趣