Powerpoint - VBA - 运行 应用程序命令栏
Powerpoint - VBA - Run Application CommandBars
我想创建一个宏,允许在 selected 对象后打开关联的 CommandBar。
我写了以下有时有效,但不是每次都有效 - 第一次无效。我不明白为什么。我必须第一次手动右键单击 select "Height and position" 选项 运行 然后一切正常 - 显示格式窗格。
你有什么避免右键单击部分的线索吗?
Sub Bars ()
Application.CommandBars("Format Object").Visible = True
End Sub
这是 Office 2016。
测试的其他代码:
Sub Bars ()
On Error GoTo Out
Dim cmd As CommandBar
For Each cmd In Application.CommandBars
cmd.Enabled = True
Next
If Application.CommandBars("Format Object").Visible = True Then
Application.CommandBars("Format Object").Visible = False
Else
Application.CommandBars("Format Object").Visible = True
End If
Out:
Exit Sub
End Sub
Commandbars 在 12 多年前随着 Office 2007 的推出而被弃用。有时需要 运行 CommandBarButton.Execute 到 运行 不在对象模型中的命令。除此之外,您应该研究功能区修改以显示自定义命令。
代码未按预期工作的原因很可能是因为 PowerPoint 2016(过去 12 年左右的所有版本)不再使用 CommandBars
作为用户界面。它可以工作,但最好尽可能使用功能区。
为了触发内置命令,可以使用命令的idMSO
"name"。可以下载这些命令的完整列表 here。
在列表中搜索 Format 会找到 idMSO ObjectFormatDialog
。使用以下行在我的系统上进行测试会显示 Format Shape
任务窗格:
Application.CommandBars.ExecuteMso("ObjectFormatDialog")
"Mso" 方法是 CommandBars
唯一使用的方法,这些天...
我想创建一个宏,允许在 selected 对象后打开关联的 CommandBar。
我写了以下有时有效,但不是每次都有效 - 第一次无效。我不明白为什么。我必须第一次手动右键单击 select "Height and position" 选项 运行 然后一切正常 - 显示格式窗格。
你有什么避免右键单击部分的线索吗?
Sub Bars ()
Application.CommandBars("Format Object").Visible = True
End Sub
这是 Office 2016。
Sub Bars ()
On Error GoTo Out
Dim cmd As CommandBar
For Each cmd In Application.CommandBars
cmd.Enabled = True
Next
If Application.CommandBars("Format Object").Visible = True Then
Application.CommandBars("Format Object").Visible = False
Else
Application.CommandBars("Format Object").Visible = True
End If
Out:
Exit Sub
End Sub
Commandbars 在 12 多年前随着 Office 2007 的推出而被弃用。有时需要 运行 CommandBarButton.Execute 到 运行 不在对象模型中的命令。除此之外,您应该研究功能区修改以显示自定义命令。
代码未按预期工作的原因很可能是因为 PowerPoint 2016(过去 12 年左右的所有版本)不再使用 CommandBars
作为用户界面。它可以工作,但最好尽可能使用功能区。
为了触发内置命令,可以使用命令的idMSO
"name"。可以下载这些命令的完整列表 here。
在列表中搜索 Format 会找到 idMSO ObjectFormatDialog
。使用以下行在我的系统上进行测试会显示 Format Shape
任务窗格:
Application.CommandBars.ExecuteMso("ObjectFormatDialog")
"Mso" 方法是 CommandBars
唯一使用的方法,这些天...