Excel如何建立可选项目的查询系统
时间:2023-05-18 11:22:54
Excel如何建立可选项目的查询系统?对于普通用户的数据查询系统来说,需要制作一个可以根据各种项目随意查询的亲和界面。它可以通过巧妙地使用VLOOKUP和OFFSET函数来实现。
一般情况下,需要对员工记录、产品记录、合同记录、学生成绩列表记录等经常查询的记录做一个查询界面,通过输入员工编号、姓名、合同编号、产品型号等简单文本,即可快速查询到需要的记录。在Excel2010中,大家通常使用VLOOKUP函数来做查询接口,但是VLOOKUP只能根据记录表中的第一列进行查询。在实际使用中,由于已知的查询条件不同,经常需要随时选择不同的列进行查询。就员工记录而言,除了通过员工编号进行查询外,有时还需要通过姓名、身份证号码和联系电话进行查询。那么我们如何通过可选列进行查询呢?本文以员工记录表的查询为例,介绍了两种方法。
一、查询界面设置
无论使用哪种方法,查询界面总是相同的。让我们介绍一下查询界面的设置。
使用Excel2010打开“员工记录”工作表,创建新的“查询”工作表,并根据需要设计查询界面。这里我们设计在B2单元格中输入查询关键字,A2单元格用于输入要查询的列标题,查询结果显示在A4:D10单元格区域。选择单元格A2,切换到数据选项卡,然后单击数据有效性。在数据有效性窗口中,点击“允许”下拉列表,选择“系列”,输入来源为“=员工记录!1:1”是记录工作表的标题行(图1),并确认设置。这样,不仅可以方便地从A2的下拉列表中选择要查询的记录列标题,而且可以有效地避免在A2中输入不存在的列标题而导致的查询错误。设置后,在A2中选择并输入一列标题“名称”,并输入正确的名称,以免以后输入公式时出现#不适用错误。
然后选择B7,右键选择“设置单元格格式”,并在“数字”选项卡中选择“文本”格式,以确保身份证号码可以正常显示。同样,应该为D5和D6设置相应的日期,然后才能将其显示为正常日期。其他具有特殊格式要求的单元格必须逐个设置,以确保查询结果的正确显示。
二、实现任选列查询
在Excel中使用VLOOKUP和OFFSET函数可以方便地实现任意列的查询。这里,我们将分别介绍这两个函数的实现方法。实际上,我们只需要选择一个。
方法一、OFFSET函数
使用OFFSET函数,您需要在员工记录表中定义每列数据的名称,然后才能实现可选列的查询效果。操作相对简单,不会影响原始员工记录表的布局。
切换到“员工记录”工作表,选择所有数据列(A:L),然后在“公式”选项卡的“定义的名称”组中单击“根据选择创建”。在“使用选定区域创建名称”窗口中,仅选择“第一行”选项(图2),然后单击“确定”根据列标题定义每列的名称。切换到“查询”工作表,选择B4单元格并输入公式=偏移量(记录!$ A1,MATCH($ B2,INDIRECTIVE($ A2),0),0 .在单元格B4:B10和D4:D8中输入此公式,但将公式中的最后一个0更改为1、2、3 … 11,以便分别显示相应列的内容。
好了,现在只需要在“查询”工作表中选择单元格A2,点击其后面的下拉按钮,从下拉列表中选择列标题“联系电话”,然后输入查询内容“13605076742”,就可以查询陈桂新的个人记录,联系电话为13605076742(图3)。
注意:如果要查询全数字身份证号,必须在身份证号前加一个半角单引号,如“‘350621197602232010”,这样身份证号才能正常显示查询。否则,无法正常显示输入的身份证号码,也无法查询结果。不要预先以文本格式设置B2单元格的值。虽然身份证号码可以以文本格式显示,但它会使输入的电话号码、序列号、日期和其他值变成文本,导致输入电话号码、序列号和日期时出错。