02 可以自动更新的二级下拉列表,怎么做?
填写地址信息时,使用下拉列表可以提高输入效率。但是如果城市名称非常多,在下拉列表中选择时就比较麻烦。
如何能够根据A列的省份,让B列的下拉列表显示对应的城市,制作一个二级下拉列表呢?
二级下拉列表,本质上就是给下拉列表构建动态的选项区域,需要结合INDIRECT函数来实现,具体操作如下。
1.制作省份下拉列表
首先为“省份”添加一级下拉列表。
1 选择A2:A10单元格区域,在【数据】选项卡的功能区中单击【数据验证】图标。
2 弹出【数据验证】对话框,单击【允许】右侧的下拉按钮,在菜单中选择【序列】命令;单击【来源】右侧的选择区域按钮,选择省份信息所在的单元格$D$2:$D$5,最后单击【确定】按钮完成设置。
2.制作城市二级下拉列表
在制作二级下拉列表之前,需要准备好下拉列表内容对应的数据。
数据中的第1行是一级下拉列表的内容,下面是每个选项对应的二级列表内容。
准备好数据之后,接下来按照下面的操作,创建二级下拉列表。
1 选择二级下拉列表内容对应的数据F1:I5,按快捷键Ctrl+G,打开【定位】对话框,单击【定位条件】按钮。
2 弹出【定位条件】对话框,选择【常量】选项,单击【确定】按钮,即可将所有非空单元格选中。
3 在【公式】选项卡的功能区中单击【根据所选内容创建】图标。
4 弹出【根据所选内容创建名称】对话框,仅选择【首行】选项,单击【确定】按钮。
5 设置完自定义名称后,选择B2:B10单元格区域,在【数据】选项卡的功能区中单击【数据验证】图标。
6 弹出【数据验证】对话框,单击【允许】右侧的下拉按钮,在菜单中选择【序列】命令;在【来源】编辑框中输入公式,单击【确定】按钮完成下拉列表设置。
公式如下。
=INDIRECT($A2)
INDIRECT函数的作用是根据自定义的名称,引用对应的数据区域。
$A2单元格的内容是“山东”,这里的“山东”不只是一个文本,在第4步中,通过根据所选内容创建功能,把山东对应的城市区域F2:F5命名为“山东”。这样就实现了“城市”列表选项可以根据“省份”不同,而动态更新了。