楼主 罗刚君 |
函数题: 设计**菜单 1.产生相关联的3级菜单 2.不用VBA,用公式和数据有效性完成 3.选择一级菜单后出现对应的二级菜单,选择二级菜单后出现**菜单,最后返回一级菜单 三级菜单函数题.rar 工作表中需要用到的资料有: 广东省 中山市 三乡镇 大涌镇 横栏镇 深圳市 宝安区 龙岗区 广州市 南秀村 石牌村 东莞市 长安镇 小榄镇 高步镇 四川省 宜宾市 江安县 宜宾县 内江市 资中县 威远县 雅安市 ** 天全县 湖北省 孝感市 云梦县 三叉镇 许昌市 襄城县 临颍县 黄石市 蕲春县 阳新县 |
2楼 gouweicao78 |
不错的设计,呵呵。 动画中“引用数据源”指向A:C列,不允许用辅助列做吗? 同单元格出现下一级别菜单已大致知道怎么实现,不过似乎方向有点不对。 |
3楼 罗刚君 |
允许用辅助区 |
4楼 rongjun |
用辅助区域做了一个: 三级下拉列表.rar |
5楼 gouweicao78 |
呀,rongjun兄先完成了。 我也做了一个,还没修改,不知是否雷同: 设置迭代次数为1,E2输入: =IFERROR(INDIRECT(TEXT(MIN(IF((COUNTIF(E$1:E1,A$1:C$22)=0)*(COUNTIF(OFFSET(A$1:A$22,,{2,0,1}),F$1)>0)*(MMULT(N(A$1:B$22=F$1),{1;1})+(COUNT(FIND({"省","市"},F$1))=0)>0),ROW($1:$22)*10+{1,2,3})),"r0c0"),0),"") F1的数据有效性:=OFFSET(E2,,,SUM(N(E2:E20<>""))) |
6楼 gouweicao78 |
忘记说了,A:C列合并单元格都有内容。 公式应该可以进一步简化。 |
7楼 rongjun |
改进了一下 三级下拉列表kk.rar |
8楼 gouweicao78 |
rongjun兄的内存数组用的好。 我刚发现了个问题:我的解法不需要居然也“循环引用”,一直以为数据有效性中的公式会导致循环引用关系,没想到不会,呵呵。 另,我原先答案有误:当F1清空时无法得到下拉菜单,特此改进(前提:对A:C列合并单元格进行处理): E2输入:
附件: 设计三级下拉菜单.rar |
9楼 hnzcdq |
新手上路, 学习中, |
10楼 hnzcdq |
能否说下制做的步骤,学习中。谢谢! |
11楼 liuguansky |
能否说下制做的步骤,学习中。谢谢! |
12楼 tongliaozyr |
收藏了,谢谢! |
13楼 hylees |
|
14楼 雾里看花 |
回去研究研究。 |
15楼 shxumin |
高手真多啊,太好了,下载学习。谢谢 |