VBA,请教几个问题。

VBA,请教几个问题。请教大神如下问题。让我理清概念。①Application.CommandBars("Cell").Controls.Add(Type:=msoCon... VBA,请教几个问题。请教大神如下问题。让我理清概念。①Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton)中的"cell"有什么意义?
②Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton)添加按键如何获取它上一级的msoBarPopup键名?
③(最关键的)Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton)只能通过指定宏激发预订程序吗?是否存在类宏?
④CommandBars中的msoControlButton键和msoBarPopup该如何遍历名?
羞愧不敢漏名
展开
 我来答
windblast
2018-01-20 · 知道合伙人软件行家
windblast
知道合伙人软件行家
采纳数:5633 获赞数:13620
毕业于空军第一航空学院电子专业,1991年开始接触电脑,从事多年计算机编程,具有较丰富的经验。

向TA提问 私信TA
展开全部

试解答如下,供参考:

在 office 的 vba 中,CommandBars 对象提供了命令栏的 CommandBar 对象的集合,对于新版本的 office (2007以后),CommandBar 已被新的“功能区”用户界面取代。

①Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton)中的"cell"有什么意义?

CommandBars 是 CommandBar 的集合(即有多个命令栏),CommandBars("Cell") 用于指定访问的是名称为 cell 的命令栏。

cell 的意义在于指定操作的目标命令栏,即向名为“Cell”的命令栏添加按钮。

②Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton)添加按键如何获取它上一级的msoBarPopup键名?

从对象层次来看,ControButton -> Controls -> CommandBar -> CommandBars。

③(最关键)Application.CommandBars("Cell").Controls.Add(Type:=msoControlButton)只能通过指定宏激发预订程序吗?是否存在类宏?

Add 方法,其语法如下:

其中 Type (控件类型)可以取以下值:

msoControlButton、msoControlEdit、msoControlDropdown、msoControlComboBox 或 msoControlPopup

当添加一个 ControlButton 后,可以通过以下属性来设置点击按钮的响应代码:

示例代码:

Set myBar = CommandBars("Custom")
Set myControl = myBar.Controls _
    .Add(Type:=msocontrolButton)
With myControl
    .FaceId = 2
    .OnAction = "!<FinanceAddIn>"
End With
myBar.Visible = True

④CommandBars中的msoControlButton键和msoBarPopup该如何遍历名?

因为存在多层对象,以下代码示例供参考:

遍历 CommandBars 集合 :

遍历“常规”命令栏中 msoControlButton 键和 msoBarPopup:

Private Sub CommandButton1_Click()
    For Each ctl In CommandBars("Standard").Controls
        If ctl.Type = msoControlButton Then
            Debug.Print "按钮:", ctl.Caption
        ElseIf ctl.Type = msoBarPopup Then
            Debug.Print "弹出菜单:", ctl.Caption
        End If
    Next
End Sub

运行截图:

追问
msoControlButton键只能通过onaction属性来设置响应吗?我想设置的键有很多,他们的语句内容基本一样,不想全部一个一个些
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式