2009-07-23 5 views
2

Ich versuche herauszufinden, wie Sie VBA schreiben, um ein Textfeld in eine Folie einzugeben, und geben Sie Text ein. Ich versuche auch, VBA für die Eingabe von Text in den Notizen Abschnitt einer PowerPoint-Folie zu finden.Eingeben von Informationen in den Notizenbereich einer PowerPoint-Folie mit VBA

Jede Hilfe würde sehr geschätzt werden. Ich habe versucht, eine Website speziell dafür zu finden, aber nicht in der Lage, dies zu tun

Antwort

4

Eingabe von Text in eine PPT Folie ist etwa das gleiche wie in den Notizen Abschnitt eingeben.

Sie müssen mit einem Slide-Objektverweis beginnen, der die Folie darstellt, die Sie hinzufügen; und Sie fügen der Shapes-Sammlung der Folien eine Textfeldform hinzu.

Beispiel:

Sub AddTextBoxToSlide() 

    Dim oDestSlide As PowerPoint.Slide 
    Set oDestSlide = ActivePresentation.Slides(1) 

    Dim slideWidth As Single 
    Dim slideHeight As Single 
    slideWidth = oDestSlide.Parent.PageSetup.SlideWidth 
    slideHeight = oDestSlide.Parent.PageSetup.SlideHeight 

    Dim oTextBox As PowerPoint.Shape 
    Set oTextBox = oDestSlide.Shapes.AddTextbox(_ 
        Orientation:=msoTextOrientationHorizontal, _ 
        Left:=0, _ 
        Top:=0, _ 
        Width:=slideWidth, _ 
        Height:=slideHeight/12) 

    oTextBox.TextFrame.TextRange.Text = "Shape text here" 

End Sub 

All dies tut, ist, fügt eine Textbox Form zu dem ersten Schlitten in der aktiven Präsentation an der Oberseite der Folie. Es ist so breit wie die Rutsche und 1/12 der Höhe der Rutsche. Die Parameter für Shapes.AddTextbox() sind ziemlich selbsterklärend ...

Um zum Notizenbereich hinzuzufügen, verwende ich einfach das NotesPage-Objekt auf der Folie, in der sich Ihre Notizen befinden ... also wäre der obige Code ungefähr gleich, außer:

Set oTextBox = DestSlide.NotesPage.Shapes.AddTextbox(msoTextOrientat... 
+0

vielen dank. Ich habe etwas sehr schnell und auf den Punkt für eine gute Weile gesucht !! Wie arbeiten Sie mit der Textbox? Ändern Sie die Größe, Schriftart, Unterstreichung usw.? danke nochmal Jon! – Justin

+0

auch wie würde ich diesen Code anpassen, um die Größe des Textfelds anzupassen? – Justin

+0

Ich habe gerade diese Lösung versucht, aber auf meiner Folie erscheint nichts (ich benutze Office 2016 in Windows 10), haben Sie eine Idee, warum das nicht funktionieren würde? – pablete