Frage

Ich habe an einem kleinen Hack mit Power Point gearbeitet, um automatisch eine Textfeldform mit einem voreingestellten Effekt zu erstellen, bei dem der Text dynamisch aus der Zwischenablage abgerufen wird. Ich habe hier ein bisschen ein Problem, die Funktionalität funktioniert gut mit dem folgenden VB -Skript mit Makros.

Sub ReadFromFile()

' CLIPBOARD
Dim MyData As DataObject
Dim strClip As String

' CLIPBOARD
Set MyData = New DataObject
MyData.GetFromClipboard
strClip = MyData.GetText

Set activeDocument = ActivePresentation.Slides(1)


 With activeDocument
        'Set QASlide = .Slides.Add(Index:=.Slides.Count + 0, Layout:=ppLayoutBlank)

        activeDocument.Shapes.AddTextEffect PresetTextEffect:=msoTextEffect28, _
        Text:=strClip, _
        FontName:="Garde Gothic", FontSize:=44, FontBold:=msoTrue, _
        FontItalic:=msoFalse, Left:=25, Top:=25

        With .Shapes(.Shapes.Count)
        .Width = 200
        .Height = 300
        End With

 End With

End Sub

Kann mir jemand helfen, das Skript für das Wickeln des Textes in die Form mit einer definierten Breite und Höhe wie im obigen Code bereitzustellen?

War es hilfreich?

Lösung

Ich bin mir nicht sicher, ob ich dich richtig verstehe, aber füge hinzu .TextFrame.WordWrap = msoTrue Lösen Sie Ihr Problem zum Block unten?

    With .Shapes(.Shapes.Count)
    .Width = 200
    .Height = 300
    End With

Andere Tipps

Ich denke, Sie suchen das:

.Shapes(.Shapes.Count).TextFrame.TextRange.Text = strClip

Sie können es in das gleiche festlegen With dass Sie die Höhe und Breite festlegen

Wenn Sie einen Text in eine Form einwickeln möchten, müssen Sie etwas anderes als eine Texteffect -Form verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top