数据验证工具的验证条件设置为“序列”时,可以引用一列或一行的值作为数据来源,从而在输入数据时可以产生下拉菜单,然后通过选择子菜单的方式输入数据,既能提升输入效率又能确保输入的准确度。但是当数据来源包含多行多列时则会出错。例如,图4.247是数据源,用它作为数据验证的来源时将产生图4.248所示的错误提示,是否有办法引用多行多列的区域,同时又避免错误提示呢。

Excel 是否可以引用多列的值生成下拉菜单?-Excel22

图4.247 定义名称

Excel 是否可以引用多列的值生成下拉菜单?-Excel22

图4.248 错误提示

解题步骤

直接引用多行多列的区域作为数据验证的来源时必定会出错,无法保存设置,而借用名称作为中转站则可以突破这个限制,从而实现需求,具体操作步骤如下。

1.选择“数据”源工作表的A1:A10,然后按组合键<Ctrl+F3>,打开“名称管理器”。

2.单击“新建”按钮,然后将名称设置为“姓名”,将引用位置设置为“=数据源!$A$2:$A$10”,操作界面如图4.249所示。

3.单击“确定”按钮保存设置,返回到工作表界面。

4.进入“学费表”,选择 A2:A28 区域,然后单击功能区的“数据”→“数据验证”,弹出“数据验证”对话框。

5.按图4.250所示的方式设置验证条件。

Excel 是否可以引用多列的值生成下拉菜单?-Excel22

图4.249 定义名称

Excel 是否可以引用多列的值生成下拉菜单?-Excel22

图4.250 设置验证条件

此时“学费表”的A2:A28区域只能引用“数据源”的A2:A10,要引用A2:C10的值还需要执行后面的步骤。

6.返回“数据源”工作表,按组合键<Ctrl+F3>,弹出“名称管理器”对话框。

7.将名称“姓名”的引用位置修改为“=数据源!$A$2:$C$10”,然后单击左方的钩,表示保存设置,操作界面如图4.251所示。

Excel 是否可以引用多列的值生成下拉菜单?-Excel22

图4.251 修改名称的引用范围

8.进入“学费表”,选择A1单元格,然后单击单元格右方的倒三角按钮,在弹出的下拉菜单中可以看到列表项目包含了“数据源”工作表的A2:C10区域的所有值,效果如图4.252所示。

Excel 是否可以引用多列的值生成下拉菜单?-Excel22

图4.252 调用单元格下拉菜单

知识扩展

1.从“数据验证”对话框中直接引用区域作为序列来源时仅允许引用单行或单列的区域,即使定义名称后再引用该名称作为来源,同样只允许使用单行或单列的区域,因此本例的操作步骤是先定义名称,然后将名称添加到数据验证的来源中,最后返回名称管理器中修改名称的引用范围。

2.从单元格的下拉菜单中选择项目替代手工输入字符,其优点有两个:一是提升输入效率(仅针对要输入的字符串较长时,如地名);二是防错,避免输入同音字或指定范围以外的字符。