打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
在Excelk中同一单元格或相邻单元格内生成三级菜单
基数数据根据 国家统计局 最新县及县以上行政区划代码(截止2008年12月31日)进行整理
http://www.stats.gov.cn/tjbz/xzqhdm/t20090626_402568086.htm
“基数数据”工作表中的数据共分为三组,其结构和要求如下:
1、每组数据的第一列只用于排序,各组数据中不能有空行,一级数据和二级数据中不能有重复。
2、二级数据所属一级数据 和 三级数据所属二级数据 中相同的数据应确保连续。
所定义的名称如下:
Me =INDIRECT("RC",0)
Data1 =OFFSET(基数数据!$B$1,1,0,COUNTA(基数数据!$B:$B)-1)
Data2 =OFFSET(基数数据!$F$1,1,0,COUNTA(基数数据!$F:$F)-1)
Data3 =OFFSET(基数数据!$K$1,1,0,COUNTA(基数数据!$K:$K)-1)
Data12 =OFFSET(基数数据!$E$1,1,0,COUNTA(基数数据!$E:$E)-1)
Data23 =OFFSET(基数数据!$J$1,1,0,COUNTA(基数数据!$J:$J)-1)
List1 =Data1
List2 =OFFSET(基数数据!$F$1,MATCH(Me,Data12,0),0,COUNTIF(Data12,Me))
List3 =OFFSET(基数数据!$K$1,MATCH(Me,Data23,0),0,COUNTIF(Data23,Me))
List =IF(NOT(ISNA(MATCH(Me,Data1,0))),List2,IF(NOT(ISNA(MATCH(Me,Data2,0))),List3,List1))
各名称的含义说明:
Me:当前的单元格,使用的是“R1C1”引用样式
Data1、Data2、Data3:一、二、三级数据的全部数据
Data12、Data23:二级数据所属的一级数据、三级数据所属的二级数据
List1、List2、List3:根据当前单元格的实际内容所对应的一、二、三级菜单
List:根据当前单元格的内容实际出现的菜单
如果希望是在相邻的三个单元格里显示分级菜单,应再定义如下:
LeftCell =INDIRECT("RC[-1]",0)
List1A =Data1
List2A =OFFSET(基数数据!$F$1,MATCH(LeftCell,Data12,0),0,COUNTIF(Data12,LeftCell))
List3A =OFFSET(基数数据!$K$1,MATCH(LeftCell,Data23,0),0,COUNTIF(Data23,LeftCell))
说明:
1、在定义第二列、第三列数据有效性时会提示有错误,这是因为其左边的单元格为空,不用理会,直接确定即可
2、由于数据是针对同一单元格设计的,如在三个单元格里显示分级菜单,则显的很冗余,请根据实际使用情况进行修改
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
利用OFFSET函数与COUNTA函数创建动态名称
数组透视表自带合并数据功能
办公小技巧:数据增加 折线图自动延长
查找与引用函数技巧-定位最后非空单元格
想要成为Excel大神,必须要掌握这个函数!
动态扩展的下拉菜单
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服