Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1626|回复: 4

两段多级菜单如何共存页面

[复制链接]
发表于 2019-10-29 11:39 | 显示全部楼层 |阅读模式
两段多级菜单如何共存页面,这两个附件的内容是不一样的   一个是填多个单元格的  一个是多选项填一个单元格的

多级联动菜单NO2.rar

55.86 KB, 下载次数: 5

多级联动菜单.rar

51.84 KB, 下载次数: 4

 楼主| 发表于 2019-10-29 13:02 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2019-10-29 19:16 | 显示全部楼层
回复

使用道具 举报

发表于 2019-10-30 15:26 | 显示全部楼层
本帖最后由 hfwufanhf2006 于 2019-10-30 15:52 编辑

什么叫共存?你这两个菜单是一模一样的,弄两个不是重复吗?唯一的不同是读取数据的方式不一样,建议设置个读取参数来分别处理;
如果实在想要弄两个快捷菜单,重复装载两次,用两个不同的快捷菜单名称应该可以,需要稍许修改下 main 的代码,我觉得没必要,还是设置参数好些。
我下面的范例是完全重写的,我实在看不来你原来的代码,不是不好,是风格不一样,主要是字典的用法差别太大。我用我擅长的递归重写了全部代码,所用时间是一样的,都需要6秒左右。
重写代码我化了大半天的时间,这个控件不熟,学习help就花了半天,真正写代码差不多2小时。
这只是范例,如果条件不对会有错误,比如没有先装载点击A列会出错,忽略它就好了;


更正:由于调试,有个别代码行有问题,你手动改一下:
1、主代码有一行因为之前测试注释掉了,要还原,代码是:
      Application.CommandBars("fanyoulin").Delete
2、主代码对于台湾、澳门、香港这些没有子菜单的地区需要增加执行代码,在:
      myButton.caption = arr(i, 1) 的后面

    增加:
      myButton.OnAction = "'WrToRng " & i & "," & 1 & "'"

    没有这一行,这三个地区无法读取;
3、在读取的子过程 WrToRng 需要修改二个地方:
       Cells(ActiveCell.Row, x2+1) = "分列读取"

     改成:
       Cells(ActiveCell.Row, 4) = "分列读取"

     后面还有一行也是类似的修改成:
       Cells(ActiveCell.Row, 4) = "连续读取"


     原来用的x2是个变动值,多数情况下没问题,但台湾、澳门、香港由于没有子菜单,会在B列填充读取类别;
     修改后的代码含义是全部都在第4列填上读取的参数类型,如果你不需要就删掉它;


重写:多级联动菜单.rar

76.65 KB, 下载次数: 7

回复

使用道具 举报

 楼主| 发表于 2019-10-30 22:52 | 显示全部楼层
hfwufanhf2006 发表于 2019-10-30 15:26
什么叫共存?你这两个菜单是一模一样的,弄两个不是重复吗?唯一的不同是读取数据的方式不一样,建议设置个 ...

感谢  我主要是想用这个方式制作日期输入   日期控件并不是每台电脑都有   麻烦
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 19:25 , Processed in 0.407868 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表