编程论坛
注册
登录
编程论坛
→
VB6论坛
请问,用VBA代码,可以用户自定义Ribbon控件吗?
mansohu
发布于 2023-07-18 21:57, 715 次点击
VB加加载项可以用IRibbonExtensibility_GetCustomUI创建用用户自己的图标,请问可以用VBA创建Ribbon 控件呢?
谢谢
1 回复
#2
约定的童话
2023-07-19 07:32
确保你的VBA项目引用了"Microsoft Office XX.0 Object Library"
在类模块中定义一个公共变量 `Private rbE As IRibbonExtensibility`;
然后添加一个公共函数:
Public Function GetCustomUI(ribbonID As String) As String
Dim xml As String
' 在这里编写你的自定义UI的XML代码,可以使用RibbonX语法
xml = "<customUI>...</customUI>"
GetCustomUI = xml
End Function
在主代码模块或其他模块中创建一个实例,并调用GetCustomUI方法:
Dim ribbonHandler As New RibbonHandler
Dim xml As String
' 调用GetCustomUI方法获取自定义UI的XML代码
xml = ribbonHandler.GetCustomUI(RibbonID)
' 使用获取到的XML代码来加载自定义UI
ThisWorkbook.CustomUI = xml
1