Excel精英培训网

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

[已解决]求助:自定义菜单项的问题

[复制链接]
发表于 2012-6-10 06:17 | 显示全部楼层 |阅读模式
定义自定义菜单项时出了问题,当程序运行到第二条“Set myMenuitem = myMenu.Controls.Add(Type:=msoControlPopup)”代码时,弹出对话框:对象不支持该属性或方法,因而定义时第二个有下属子菜单的“查看基础数据”的菜单项也没出现。请各位老师给予帮助。见附件: 自定义菜单显示问题.rar (12.09 KB, 下载次数: 6)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-6-10 07:52 | 显示全部楼层
.................
Set SubMenu = myMenuitem.Controls.Add(Type:=msoControlPopup)
    With SubMenu
        .Caption = "查看基础数据"
        .BeginGroup = True  '插入分隔符
    End With
   
        Set myMenu = SubMenu.Controls.Add(Type:=msoControlButton)
        With myMenu
            .FaceId = 18
            .TooltipText = "材料编码表"
            .Caption = "材料编码表"
            .OnAction = "材料编码表"
        End With
        
        Set myMenu = SubMenu.Controls.Add(Type:=msoControlButton)
        With myMenu
            .FaceId = 18
            .TooltipText = "产品编码表"
            .Caption = "产品编码表"
            .OnAction = "产品编码表"
        End With
        Set myMenu = SubMenu.Controls.Add(Type:=msoControlButton)
        With myMenu
            .FaceId = 18
            .TooltipText = "供应商档案"
            .Caption = "供应商档案"
            .OnAction = "供应商数据表"
        End With
        
        Set myMenu = SubMenu.Controls.Add(Type:=msoControlButton)
        With myMenu
            .FaceId = 18
            .TooltipText = "部门档案"
            .Caption = "部门档案"
            .OnAction = "部门数据表"
        End With

        Set myMenu = SubMenu.Controls.Add(Type:=msoControlButton)
        With myMenu
            .FaceId = 18
            .TooltipText = "常用摘要"
            .Caption = "常用摘要"
            .OnAction = "常用摘要数据表"
        End With
......................
End Sub
回复

使用道具 举报

发表于 2012-6-10 07:57 | 显示全部楼层
删除自定义菜单用一句语句就可以啦:
MenuBars(xlWorksheet).Reset  '菜单复原
回复

使用道具 举报

 楼主| 发表于 2012-6-10 15:42 | 显示全部楼层
zjdh 发表于 2012-6-10 07:52
.................
Set SubMenu = myMenuitem.Controls.Add(Type:=msoControlPopup)
    With SubMenu

zjdh老师,按照你的修正,代码可以执行了,但我最初的要求菜单达到的效果是:在一级菜单“基础设置”下,“录入”、“编辑”、“查看基础数据”这三项是二级菜单,你修改后的代码执行的结果是“查看基础数据”菜单项是在“编辑”菜单项下的,请你再修正一下好吗?另个。好象是否要增加声明子菜单变量 的语句:Dim SubMenu As CommandBarControl '声明子菜单变量


谢谢!
回复

使用道具 举报

发表于 2012-6-11 07:50 | 显示全部楼层    本楼为最佳答案   
你的要求我理解错了!
二级菜单.rar (11.82 KB, 下载次数: 23)
回复

使用道具 举报

 楼主| 发表于 2012-6-11 16:43 | 显示全部楼层
zjdh 发表于 2012-6-11 07:50
你的要求我理解错了!

谢谢,可以用了。但有一个问题我弄不明白:在一个二级菜单项的最后一项如带有三级子菜单,则在此二级菜单项下面想再增加一个二级菜单(无论带不带子菜单),则模块运行不了了,不知可有原因?
回复

使用道具 举报

发表于 2012-6-11 17:45 | 显示全部楼层
给你一个模板:

多级菜单范例.rar

8.52 KB, 下载次数: 21

回复

使用道具 举报

 楼主| 发表于 2012-6-12 20:56 | 显示全部楼层
zjdh 发表于 2012-6-11 17:45
给你一个模板:

谢谢,你提供的代码很简洁,确实好。顺便请教 Style常量:msoButtonAutomaticmsoButtonIconmsoButtonCaptionmsoButtonIconandCaptionmsoButtonIconAndCaptionBelowmsoButtonIconAndWrapCaptionmsoButtonIconAndWrapCaptionBelowmsoButtonWrapCaption的作用。


回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 12:28 , Processed in 0.349337 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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