【发布时间】:2014-05-10 16:24:16
【问题描述】:
我在 powerpoint 中使用 vba 创建一个文本框。为此,我使用以下代码:
Set survey = cSlide.Shapes.AddTextbox(msoTextOrientationHorizontal, 20, 40, 400, 20)
survey.TextFrame.TextRange.text = Me.QuestionBox.text
survey.TextFrame.TextRange.font.SIZE = sh.GroupItems(1).TextFrame.TextRange.font.SIZE
survey.TextFrame.TextRange.font.name = sh.GroupItems(1).TextFrame.TextRange.font.name
survey.width = sh.GroupItems(1).width
survey.height = sh.GroupItems(1).height
survey.top = sh.GroupItems(1).top
survey.left = sh.GroupItems(1).left
如您所见,我正在使用另一个形状的大小来使其大小相同。这就是我正在使用(上)和我创建(下)的形状的外观:
我希望它出现在 2 行而不是 1 行中。您可以看到宽度和高度是正确的,但是当它到达形状的边界时,它没有转到第二行,而是继续。如果您只是手动修改下面的形状并给出更多或更少的宽度,它会自动将第二个单词放在第二行,但是当我使用 vba 时我无法做到这一点。有什么我可以用来让它自动发生的吗?
【问题讨论】:
-
试试
survey.TextFrame.WordWrap = msoTrue? -
是的,这个解决了我的问题...如果您将其作为答案,我会将其作为正确的答案。谢谢
标签: vba textbox powerpoint