搜索
写经验 领红包
 > 自然

excel多级联动(如何实现多级联动下拉菜单效果)

在生活中,很多人可能想了解和弄清楚Excel多级联动下拉菜单的制作的相关问题?那么关于excel 多级联动的答案我来给大家详细解答下。

excel 多级联动(如何实现多级联动下拉菜单效果)

今天有朋友问,Excel如何制作多级联动下拉菜单,其实Excel制作这种下拉菜单,主要利用Excel的“数据验证”(前期版本叫“数据有效性”)以及“INDIRECT()”字符串引用函数。

首先介绍一下“INDIRECT()”函数,该函数的语法为:INDIRECT(ref_text, [a1]),参数ref_text为一字符串,而该字符串为有效的单元格引用,并返回由该文本字符串指定的引用,此函数立即对引用进行计算,并显示其内容。

例如:

A1单元格的值为“A5”,公式“=INDIRECT(&34;) ”将返回“A5”,而公式“=INDIRECT(A1) ”则返回单元格A5所包含的值,因为这个公式首先对A1进行计算,得出A1为字符串“A5”,然后取字符串“A5”对应的单元格的值。

其次,Excel的“数据验证”,就是对单元格输入数据的有效性的验证,当你给它一个序列的选择范围,然后在其中选择,这也是一种验证,下拉菜单的制作就是应用了这一点。

下面我们先用“公式”菜单中的“定义的名称”选项卡中的“根据所选内容创建”来创建“省份”名称以及“辽宁”、“黑龙江”、“吉林”名称。

动画演示

然后对单元格“D10”应用“数据验证”,在“数据验证”中“序列”为“=省份”,点击确定,也就是说给单元格“D10”确定了一个序列的取值范围,其范围为名称“省份”所定义的值“辽宁”、“黑龙江”、“吉林”,这样一级下拉菜单设计完成。

当我们设计二级菜单时,二级菜单的取值范围是随着一级菜单变化而变化的,我们就要在“数据验证”的“序列”中应用函数“INDIRECT()”了,且函数的参数为“$D$10”,注意公式中没有双引号,也就是说函数“=INDIRECT($D$10)”先对$D$10进行计算,得出带双引号“辽宁”、“黑龙江”、“吉林”,然后引用其定义的名称所对应的值,由于$D$10是变化的,所以二级菜单对应的取值范围也随着$D$10的变化而变化,注意这里要勾选上“忽略空值”,这样二级下拉菜单就制作完成了。

动画演示

应用此方法,可以做三级、四级等菜单,注意,要改变上一级菜单,最好先清除已选择的本级菜单内容,否则容易出错,要想自动清除本级菜单内容应该应用VBA处理。

温馨提示:通过以上关于Excel多级联动下拉菜单的制作内容介绍后,相信大家有新的了解,更希望可以对你有所帮助。