[使用VBA for PowerPoint填充editBox中的文本

问题描述 投票:0回答:1

我是VBA Power Point插件开发的新手。我已经使用CustomUI编辑器在PowerPoint功能区中成功添加了editBox。后来,我面临通过VBA代码将文本动态添加到editBox的困难。我已经看到了一些解决方案,例如以下所述的流程:

  1. Write onLoad函数
  2. 使用GetText方法,可以使用Invalidate函数在editBox中输入文本。

但是在我的情况下这没有发生。有人可以帮助/指导我使用VBA代码在PowerPoint功能区的editBox中填充数据吗?

作为参考,我已经发布了以下代码。请检查。

Option Explicit

Dim sRename As String
Dim RibbonUI As IRibbonUI

Sub OnSlideLoad(ribbon As IRibbonUI)
Set RibbonUI = ribbon
Set sRename = "checking"
End Sub

Sub Height_onChange(control As IRibbonControl, text As String)
    MsgBox text
End Sub

Sub Width_onChange(control As IRibbonControl, text As String)
    MsgBox text
End Sub

Sub Height_getText(control As IRibbonControl, ByRef returnedVal)
    returnedVal = sRename
End Sub

Sub Width_getText(control As IRibbonControl, ByRef returnedVal)
    returnedVal = sRename
End Sub

Sub ButtonClick()
    RibbonUI.InvalidateControl ("boxHeight")
End Sub
vba plugins ms-office powerpoint ribbon
1个回答
0
投票

感谢您的支持。我找到了解决方案。要在功能区Excel / PowerPoint中动态更新editBox,我们需要在PowerPoint的XML布局中分配回调函数。编写脚本时必须实现相同的功能。就我而言,我发现VBA函数名称与XML布局函数的名称有所变化结果,不会触发回调功能。我已经正确修改了它们,现在可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.