PowerPoint VBA programmieren

Die Seite zum Handbuch


Ein Kommentar

PowerPoint VBA Programmierung

Nun hab ich’s doch noch aufgeschrieben – das eBook zur Programmierung von PowerPoint – in deutscher Sprache. Fängt ganz vorne an: von BASIC’s bis Debugging und weiter zur Objektwelt von Presentation – Slide – Shape.  AddIn und Konsorten mit oder ohne Ereignissteuerung sowie Ribbon UI und jede Menge Code, Beispiele und Listings…

Erhältlich als PDF und als richtiges EBook im EPUB-Format.    »Bestellen

»Inhaltsverzeichnis       »VBA Powerpoint Video Workshop       »Drag & Drop-Animation


Errata:

Broken Link in ‚Forms Steuerelemente.CommandButton‘:
Studieren Sie dazu das Beispiel CmdKlasse.ppt

Angabe CallBack Prozedur für customButtons fehlt in ‚RibbonUI.Struktur der Ribbon-Bescheibungsdatei‘:

Public Sub korrectAnswers(control As IRibbonControl)
‚CallBack Proceduren für alle customButton einrichten
End Sub


Hinterlasse einen Kommentar

Präsentationen mit Ereignisklasse

Im Unterschied zu allen anderen Office-VBA Dialekten verfügt PP über keine Ereignisklassen. Sie können also mittels VBA-Code nicht auf Ereignisse wie z.B. Präsentationsstart(_SlideShowBegin), NächsteFolie(_SlideShowNextClick) oder Einfügen einer Folie (_PresentationNewSlide) usw. reagieren.
Sie können zwar nachträglich eine Eventklasse bauen, das Verfahren ist in der Office-Hilfe auf Seite

»‘Vorgehensweise: Verwenden von Ereignissen mit dem Application-Objekt

beschrieben. Nur müssen Sie den Code auch ausführen, damit die Eventklasse instanziert wird – und das geht nur durch eine Benutzeraktion weil ja noch keine Ereignisse zur Verfügung stehen – dumm gelaufen…

In den Powerpoint Versionen ab 2007 stehen über die RibbonUI sogn. Callback-Prozeduren zur Verfügung, die den Job der Instanzierung der Eventklasse übernehmen können. In dem Beispiel

»CallBackEvent.pptm

habe ich ein Dummy-RibbonUI eingebaut, die über die CallBack-Prozedur onLoad die in der Präsentation angelegte Eventklasse instanziert – der Code wird also unmittelbar nach dem Laden der Präsentation ausgeführt. Beachten Sie, dass jede Code-Änderung den Objectpointer der EventClass zurücksetzt – die Eventklasse neu instanziert werden muss!

Startmeldung der CallBack-Prozedure

Startmeldung der CallBack-Prozedure

In diesem Beispiel richte ich einen _SlideShowNextClick Event ein und schreibe in der Fußzeile in das Shape Foliennummer die berühmte Killerphrase Folienummer von Folienanzahl: ‚1 von 99‘.

Viel Spass damit

HW


Hinterlasse einen Kommentar

Inhaltsverzeichnis zum Handbuch

Inhalt

1
1.1
..
1.2
1.3
1.4
..
..
..
1.5
..
..
..
..
..
..
..
..
..
2
2.1
2.2
2.3
2.4
2.5
2.6
3
3.1
3.2
..
..
..
3.3
3.4
3.5
3.6
..
..
..
..
4
4.1
4.2
4.3
4.4
4.5
4.6
5
5.1
5.2
..
5.3
6
6.1
6.2
6.3
7
..
..
..
..
..
..
..
..
..
BASIC GRUNDLEGENDE KONZEPTE
VBA-ENTWICKLUNGSUMGEBUNG
Vba-Editor
MAKRO-SICHERHEIT
CODE
DATEN
Lokale und öffentliche Variablen
Variablenübergabe
Übung
SPRACHELEMENTE
Verzweigungen
Schleifen
Exit
Felder (Arrays)
VBA Bibliothek
InStr-Funktion Beispielseite aus der OH
Strings
Klasse und Objekt
Debugging
OBJEKTE
OBJEKTPFADE
FOLIEN- FOLIENELEMENTE ANSPRECHEN
AUFZÄHLUNGEN UND LISTEN
OBJEKT-VARIABLE ODER OBJEKT ZEIGER
SELECTION
EIN OBJEKT ERZEUGEN
PROGRAMMIEREN – OBJEKT UND CODE
MAKRO-CODE-ANWENDEN
MAKROS AUFZEICHNEN
Selektierer – Exkursion
Deselect von PP-Code
Wieso ist das Selektieren so verbreitet?
ARTEN VON MAKROS
ACTIONMAKROS
AUTOMATISIERUNGSMAKRO
BEISPIELE
Autoformen ein- und ausblenden
Interaktives Organigramm
Dateien öffnen
Diagramm-Typ ändern
FORMS STEUERELEMENTE
ALLGEMEINES
INTERAKTIVE TEXTFELDER
KONTROLLKÄSTCHEN
OPTIONSFELDER
FOLIENTITEL ALS MENÜ
WEBSEITEN IM STEUERELEMENT
ADD-INS
POWERPOINT ADD-IN START
SYMBOLLEISTEN
Aktuelle Folie drucken
EREIGNISKLASSE
RIBBON UI
RIBBON USER INTERFACE
MENÜ-REGISTER (OFFICE 2010)
STRUKTUR DER RIBBON-BESCHREIBUNGSDATEI
ANHANG LISTINGS
SwitchAmpel
UpDateLinkedObjects (Zugriff auf OLE-Server)
Autoklasse für Module AutoObjektWelt (Class Example)
ComboBox1
CountDown
DisplayMessage
Multiple Choice Quiz
DragandDrop
Interaktive Texteingabe (Class Example)
4
4
5
6
7
8
9
10
10
11
11
11
12
12
12
13
14
16
18
21
22
23
24
25
26
26
27
27
28
31
34
36
37
38
40
42
42
45
46
47
51
51
52
54
55
56
57
62
62
64
65
67
69
70
76
79
82
82
83
83
88
89
90
92
97
102


Hinterlasse einen Kommentar

Video Workshop VBA Powerpoint

Die Objektelt von Powerpoint, arbeiten mit VBA-Editor und Debugger
swf: VBA PowerPoint Objekte – Eigenschaften, Methoden und Objektpfade
|Objekte: Objektpfade, Presentation, Slide, Shape, ActiveWindow, ActvePresentation
swf: VBA PowerPoint AutomatisierungsMakro CopySize
|Makro: Übertragen der Größe von einer Autoform auf die andere|
swf: VBA PowerPoint AktionMakro Diagramm interaktiv
|Diagramm interaktiv während der Präsentation ändern|
swf: VBA PowerPoint Add-In CopySize mit Befehlsschaltfläche
|Makro CopySize als Add-In umschreiben und Aufruf-Button in Symbolleiste einhängen|
swf: VBA PowerPoint Steuerelemente und Ereignisklassen
|Controls, Class and Events: Interaktive Texteingabe mittels Steuerelement TextBox|
swf: VBA PowerPoint Daten einer EXCEL-Zelle im Fließtext einer Textbox
|Datentransfer von Excel nach PPT:
Verknüpfung von PowerPoint und ExcelZelleninhalt im Fließtext einer
Textbox einbauen|Neu: Add: This Macro was developed to PP 2007. There is a bug in TextRange-Object 2003
corrupting start and stopp while deleting text phrases. I searching for workaround – feel free to make a proposal.
swf: VBA PowerPoint Multiple Choice Test Quiz
|Checkbox anlegen und Auswerten der WAHR/FALSCH Antworten zu einem Gesamtergebnis zusammenfassen|
Beispielpräsentation siehe weiter unten QUIZ20Neu
swf: You can have Drag and Drop in Powerpoint. (Implementation and Handling)
Verwenden Sie Drag&Drop-Animationen
in Ihren Präsentationen (Drag&Drop-Makro).PowerPoint
als interaktives Whiteboard, als interaktives Quiz, Folienobjekte
während der Präsentation per Mausklick bewegen oder verschieben

Skript und Präsentation

ppt: BASIC Programmierung
Zip-Archiv (537KB) des Lehrgangs
BASIC Grundlagen der Programmierung in Powerpoint
ppt: VBA Programmierung
Zip-Archiv (767 KB) des Lehrgangs zur Programmierung in VBA (Add-In
Inhalt INDEX
)
INDEX erstellt ein verlinktes
Inhaltsverzeichnis – es ist eine Studie des VBA-Lehrgangs und primär
kein anwenderoptimiertes Add-In!

Beispiele zu VBA und Powerpoint

ppt: Multiple Choice Quiz (Demoshow ca 9MB)
ppt: VBA Toolbox 
per Klick anzeigen oder abdecken, Textbox mit Lauftext ausstatten, Rollover-Effekt,
berührungsempfindliche Textbox bei MauskontaktNavigation mit ComboBox,
Uhr und (Countdown) Timer einrichten (usrTimer-Add-In ab ppt2000), ProgressBar mit % Anzeige
ppt: AnalogUhr

Eine analoge Uhr in PowerPoint.

Die Makrouhr wird angetrieben durch eine VBA-Prozedur oder durch eine Animation. Der Makro ist ein Dauerläufer mit hoher CPU- Belastung und nicht mit Animationen verträglich!

ppt: DAO Datenbanken (Accesstabelle) in PPT einbinden
Zugriff auf Access-Datenbanken via DAO-Schnittstelle ermöglichen
ppt: Pfeil-Animation auf Funktionspfad mittels VBA
Ein Zeichenobjekt (Shape) auf vordefinierten Pfaden bewegen
ppt: EventOpen AddIn: Beispiel-Anwendung nix.ppt
Reagiert auf das Ereignis PresentationOpen Sucht in jeder zu öffnenden Präsentation ein VBA-Modul
mit dem Namen  ‘Auto‘ und ruft dort die Prozedur: Sub Event_Open().
ppt: Aventskalender:
mit Türchenbremse für 1.12-24.12


Hinterlasse einen Kommentar

Drag & Drop in Powerpoint

So wenden Sie den Drag&Drop Makro an
(Hinweise zur Beispieldatei Quiz20.pptm im Buch)
z.B. für ein Quiz:
Multiple Choice Aufgaben,
Zuordnungsaufgaben (freie Ablage per Drag&Drop),
Zuordnungsaufgaben (spring zurück bei falsch per Drag&Drop),
z.B. als Whiteboard…
Folienobjekte interaktiv verschieben, anfassen, beschriften, drehen …

»About macro security:

swf:  Video…You can have Drag and Drop in Powerpoint. Implementation and Handling
Verwenden Sie Drag&Drop-Animationen in Ihren Präsentationen (Download:Drag&Drop-Makro).PowerPoint als interaktives Whiteboard, als interaktives Quiz, Folienobjekte während der Präsentation per Mausklick bewegen oder verschieben.

  • Neu..Update version 2013
    (coming soon: test version available mail 2 hw::lemitec.de)
  • compatible to Windows Office 2003/2007/2010 (no iOS version)
  • 2010:CTRL-Key is blocked by Laser-Point-Feature (CTRL-Key replaced by CAPS-LOCK-Key
    >I’m not sure this is working with all keyboards< )
  • Fix Start Stopp – Handling with Macro FixStartStop
    ‚Move shape to start position – call FixStartStop to save start position then
    ‚move shape to stop position – call FixStartStop to save stop position.