【问题标题】:How to create a custom textbox with set text, font type, font size, font colour in Powerpoint?如何在 Powerpoint 中创建具有设置文本、字体类型、字体大小、字体颜色的自定义文本框?
【发布时间】:2014-02-15 03:50:34
【问题描述】:

我需要在活动幻灯片中创建一个自定义文本框,并使用宏在 Powerpoint 2007 中设置文本、字体类型、字体大小、字体颜色以及粗体和斜体功能。

我目前正在使用此代码:

Sub InsertTextBox()
Set myDocument = ActivePresentation.Slides(1)
Set newTextBox = myDocument.Shapes.AddTextbox(msoTextOrientationHorizontal, _
    100, Top:=100, Width:=541.44, Height:=43.218)
    With newTextBox.TextFrame.TextRange
        .Text = "Slide Title"
        .Font.Size = 24
        .Font.Name = "Arial"
        .Font.Colour = RGB(107, 107, 107)  
End With
End Sub

它在 .Font.Colour 中抛出一个异常,表示此属性与对象无关。我还需要合并一个粗体和斜体的功能..请帮我解决这个问题

【问题讨论】:

  • .Font.Color = 是正确的属性。粗体使用这个.Font.Bold = true,斜体非常相似:.Font.Italic = true

标签: vba powerpoint powerpoint-2007


【解决方案1】:

你想要

.Font.Color.RGB = RGB(107, 107, 107)

正如 Kazjaw 指出的那样,它是 .Color 而不是 .Colour

【讨论】:

  • 嗨史蒂夫......在上面的代码中,如果我只想将文本“幻灯片标题”设为粗体并将其插入为文本框,而幻灯片标题后的剩余文本不应为粗体..如何做到这一点
【解决方案2】:

您可以在范围上使用 Find 来定位文本范围内的字符串并返回仅包含找到的文本的新文本范围:

With newTextBox.TextFrame.TextRange
    With .Find("Slide Title")
        .Font.Bold = True
    End With
End With

在实践中,您可能希望使用 Instr 来验证您要查找的文本是否确实在文本框中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-07
    • 1970-01-01
    • 2014-12-15
    • 2023-04-06
    • 1970-01-01
    相关资源
    最近更新 更多