PowerPoint加载项将文本框添加到选定的幻灯片

问题描述

我试图创建一个按钮,当单击该按钮时,它将在指定位置以指定格式(字体,大小,颜色,对齐方式)向所选幻灯片添加两个文本框。我一直在尝试对任何适用的东西进行逆向工程,但最终会导致破坏。这套代码将使我可以制作一个矩形(不是首选的文本框),并为其设置大小(仅1个而不是2个),并带有示例文本。.为了我的生命,我不知道如何使它创建一个所选幻灯片或活动窗口上的文本框。这是我找到的代码

Sub AddTextBox()

Set myDocument = ActivePresentation.Slides(1)

With myDocument.Shapes _
        .AddTextBox(msoShapeRectangle,180,175,350,140).TextFrame
    .TextRange.Text = "Ctrl+A(Select all),Ctrl+V(Paste)"
    .MarginTop = 10
    
End With

End Sub

解决方法

要引用当前正在显示的幻灯片,可以使用View对象的Slide属性...

Dim mySlide As Slide
Set mySlide = ActiveWindow.View.Slide

对于创建文本框,这是根据文档here ...

的正确语法

语法

表达式。 AddTextbox( Orientation Left Top Width 高度

expression一个表示Shapes对象的变量。

所以,在您的情况下,可能是这样的...

Dim myTextbox As Shape
Set myTextbox = mySlide.Shapes.AddTextbox(msoTextOrientationHorizontal,180,175,350,140)

根据需要更改文本方向。