Excel 新人求助如何跨工作表实现三级联动

2024-12-04 16:45:34
推荐回答(2个)
回答(1):

通过数据的有效性实现下拉菜单

1
我们先做一个不联动的下拉菜单:
我们打开office2007→数据→数据有效性

2
在弹出的对话框里面点击“允许”下拉菜单里的“序列”:

3
在“序列”下面的“来源”里面有以下两种写法:
1、手动输入序列名并以拼音下的逗号隔开。
2、选择一个引用。

4
用第一种手动输入序列名方法制作下拉菜单。

5
用第二种选择引用方法制作下来菜单。

END
怎么定义名称

1
我们点击“公式”→“定义名称”:

2
在弹出的窗口"名称"里键入我们想定义的名称。在“引用位置”选择一个区域。
如下图:“NUM”就代表这A1:A10的区域。

END
创建多级联动的下拉菜单

我们首先将:
A公司所含部门C2:C4定义为“A公司”
A公司综合办的职工所包含的员工E2:E3定义为“综合办”
剩下的同理定义名称即可。

我们在A20列,通过数据有效性的“序列”,添加下拉菜单:

在B20列,通过数据有效性的“序列”,键入“=indirect($A$20)”:
表示,B20里的内容是——名称为“A20”(表示A20里面的值)所对应的区域。这里如果A20为A公司,那么B20=INDIRECT($A$20)就表示,在定义名称里名为A20所定义的C2:C4。
indirect的意思为,把其后面括号里的内容根据已定义的“名称”转成其代表的“区域”。

在C20列,通过数据有效性的“序列”,键入“=indirect($B$20)”:
同理上。

5
最后我们就实现如图的多级联动下拉菜单:

回答(2):

可以使用以下几种方法试试:
1、公式+名称+数据有效性组合使用试试;
2、数组+字典+vba