三级下拉列表
问题:制作三级下拉列表
数据源:
省市列表
市县区列表
查询表
数据下拉列表+函数解决。
【数据】》【下拉列表】》【从单元格选择下拉选项】》写入公式》【确定】
一级列表公式:
1 | =OFFSET(省市列表!$A$1,,,,COUNTA(省市列表!$1:$1)) |
从省市列表的A1起,向下、向右不偏移,默认一行,列数为省级列表第一行有内容的单元格数。
二级列表公式:
1 | =OFFSET(省市列表!$A$2,,MATCH(B4,省市列表!$1:$1,)-1,COUNTA(OFFSET(省市列表!$A:$A,,MATCH(B4,省市列表!$1:$1,)-1))-1) |
用MATCH函数查找被选择的一级选项的结果在省市列表里第一行的位置,减1用以修正。
从省市列表的A2起始,向下不偏移,向右偏移MATCH的结果,即一级选项结果在省市列表中所在列第二行单元格的位置。如MATCH的结果是2,OFFSET配合前三个参数的结果就是C2。
选项数量用COUNTA嵌套OFFSET获得,从A列起,向下不偏移,向右偏移MATCH的结果,如MATCH的结果为2,OFFSET的结果为整个C列。经过COUNTA计数后得到包括标题在内所有计数,再减1去掉标题的个数,以此作为第一个OFFSET的第四参数。
三级列表公式:
1 | =OFFSET(市县区列表!$A$2,,MATCH(C4,市县区列表!$1:$1,)-1,COUNTA(OFFSET(市县区列表!$A:$A,,MATCH(C4,市县区列表!$1:$1,)-1))-1) |
这一公式除引用区域换成市县区列表,查找值换成二级选项结果所在单元格以外,其他与二级列表公式一样。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2022-03-25 时间函数(Power Query 之 M 语言)