Excel弹出式省市区三级菜单 VBA精品实例源码分享 图文

2019年7月13日18:46:23 4 582 views

案例文件下载请直接看文章末尾

动图镇楼

网上很多用数据有效性做二级和三级菜单的方法,但是都只限于少量数据使用,当数据多的时候,完全无法满足需求,比如我有客户就提出要全国省市区的三级菜单,为此我写了一个VBA代码,完成了点击单元格弹出三级菜单的功能

另外这个菜单比较厉害还有一个地方就是 可以根据当前选择的位置,只弹出子菜单,也就是不用每次都第一级开始选择

选了二级 就只会弹出对应二级的子菜单

选了3级就只弹出上级对应的最后一个三级可选项

以行政区划源数据为例,接近3000条数据的菜单 ,本方法在工作簿开启的时候,3秒加载完成 ,后续操作就再也不会有任何延迟,主要耗时都是生成菜单UI本身

一般情况的菜单不会这么多 1000行以内的话 基本上瞬间生成完成,部分源码如下

特别说明:本程序可扩展为N级菜单,只要你的源数据是按顺序排列的多级格式,直接在数据源表写入数据再生成菜单即可看到效果

核心代码为mPopTree中,数据表中,运行按钮即可在测试表中点击输入区看到效果

代码有注释,需要研究的自行查看,若不考虑速度优化程序可以写的更短。

再附一个4级菜单的杂乱数据生成菜单示例,这里源代码没动,只是修改了数据源

网站经费紧张,附件收费下载,感谢支持!

更多实例视频请搜索excel880,表格定制开发服务可加微信Excel880A,

 

  • 微信扫码免费学习
  • 免费学习48小时
  • weinxin
  • 我的微信公众号
  • EXCEL880
  • weinxin

发表评论

您必须才能发表评论!

目前评论:4   其中:访客  2   博主  2

    • excel880 Admin

      购买VBA175例教程后可下载全部vba代码 视频也有本代码的移植方法详解http://www.evketang.com/mcht/40008/0/course_detail.html?id=2965#

      • excel880 Admin

        可以 购买我的VBA175例视频教程 带全部案例详解 http://excel880.com/blog/archives/5057

        • jack_liu 1

          可以付费下载代码吗?

          • jack_liu 1

            如何下载代码