卡饭网 > wps > 正文

巧借"名称",在WPS表格中建立多级下拉列表

来源:本站整理 作者:梦在深巷 时间:2012-05-27 13:04:21

在WPS表格中为了方便规范数据的录入,我们经常会在相应的单元格中提供下拉列表以便选择录入。但如果需要建立多级下拉列表,那又该如何处理呢?

在某学校设有高一、高二、高三共三个级部,每个级部的分别有十个左右的班级。以前在统计学生相关信息的时候,经常发现各班级、级部上交的表格很不规范,因此为了规范起见,有必要建立多级的下拉列表,如图1所示。

巧借

图1

为此,我们应该借助“名称”以达到目的。

一、定义名称

如图2所示。

巧借

图2

在Sheet1工作表中建立如图表格。各列标题就以相应的级部名称来表示,其下则分别录入各相应的班级,四个级部分别在A-C列。在E1单元格录入“级部”,其下录入四个级部名称。注意此处级部名称应与各列标题一致。

选中A列单元格,点击菜单命令“插入→名称→定义”,打开“定义名称”对话框。在上方的输入框中输入“高一”,并确认下方的“引用位置”输入框中数据为“=Sheet1!$A:$A”,如图3所示。

巧借

图3

点击确定后,就可以将A列单元格区域定义为“高一”了。不信,你可以在表格的名称框中输入“高一”,回车,是不是整个A列就被选中了?

可以用同样的方法,分别选中B列、C列、E列单元格区域后,在“定义名称”对话框中将它们分别定义为“高二”、“高三”、“级部”名称。也可以直接在上方的输入框中输入名称,然后将下方的“引用位置”修改成相应的单元格区域,然后点击“添加”按钮,将名称添加到当前工作簿的名称列表中。比如定义 “高三”名称时,其引用位置应改为“=Sheet1!$C:$C”,定义“级部”名称时,其引用位置应改为“=Sheet1!$E:$E”。

二、设置数据有效性

如图4所示表格。

巧借

图4

选中C2及以下单元格区域,点击菜单命令“数据→有效性”,打开“数据有效性”对话框。在“允许”下拉列表中选择“序列”,然后在下方的“来源”输入框中输入“=级部”,其它设置如图5所示。

巧借

图5

推荐:点击免费下载最新版WPS办公软件 》》查看更多

确定后,将鼠标定位于C2或其下单元格,可以发现右侧出现下拉按钮,点击即可出现在Sheet1工作表E列中所列的级部名称列表。

关键是表格中的D列,如何根据C列所选级部名称在D列单元格出现相应级部的班级列表呢?其实,这一步也是属于窗户纸性质的,一捅就破。选中D2及以下单元格区域,在“数据有效性”对话框中,“允许”列表仍选“序列”,但在“来源”输入框中输入公式“=INDIRECT($C2)”,如图6所示。

巧借

图6

确定后再单击相应单元格,就可以看到图1所示的效果了。

函数INDIRECT($C2)的作用是返回在C2单元格中的数据的值。比如本例图1中“=INDIRECT($C2)”的结果就是“=高一”,而“=INDIRECT($D2)”的结果就是“=高三”。

如有更多级别的下拉列表也不用愁,就是这么两步,先定义名称,然后在数据有效性对话框中进行引用名称就可以了。

相关推荐