Anhang

Aus VBA-wiki
Version vom 23. November 2017, 06:47 Uhr von Pwania (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Add-Ins == === Kurze Beschreibung === Die Office-Anwendungen Word, Excel und PowerPoint bieten zwei Möglichkeiten, zusätzliche Funktionalitäten mithilf…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Add-Ins

Kurze Beschreibung

Die Office-Anwendungen Word, Excel und PowerPoint bieten zwei Möglichkeiten, zusätzliche Funktionalitäten mithilfe von VBA bereitzustellen: ;Als Datei (Dokument, Arbeitsmappe, Präsentation)

  • Bietet speziell auf einen Dokument/Tabellen/Präsentations-Typ zugeschnittene Funktionen an
  • diese stehen ausschließlich bei der Arbeit mit dieser Datei zur Verfügung
  • In Word stehen sie den auf einer Vorlage basierenden Dokumenten zur Verfügung ;Als Add-In
  • Bietet speziell auf den Kunden zugeschnittene Funktionen an, welche auf eine Vielzahl von Dokument/Tabellen/Präsentations-Typen zutreffen
  • Bietet erweiterte Funktionen an, welche dem Anwender / dem Kunden nützlich sind * Steht in der Regel während der gesamten Laufzeit der Anwendung zur Verfügung === Weiterführende Informationen === Die Office Anwendungen unterscheiden sich allerdings in der Art und Weise, wie Add-Ins erstellt, eingebunden, bearbeitet und gespeichert werden:
  • Excel Add-Ins

Auto-Makros

Auto-Makros sind eine sehr rudimentärer Weg, auf bestimmte Ereignisse der Office-Anwendung zuzugreifen. Sie stehen in den drei Anwendungen Word, Excel und PowerPoint zur Verfügung, unterscheiden sich jedoch teilweise in Schreibweise und Einsatzgebiet.

Word

  • dieses Dokument
  • diese Vorlage geöffnet wird | Vorlagen
    Dokumente |- style="vertical-align:top;" | AutoClose | Wird ausgeführt, wenn
  • dieses Dokument
  • diese Vorlage geschlossen wird | Vorlagen
    Dokumente |- style="vertical-align:top;" | AutoExec | Wird ausgeführt, wenn * Word gestartet bzw.
  • das Add-In geladen wird | Ausschließlich Add-Ins und Normal.dot(m) |- style="vertical-align:top;" | AutoExit | Wird ausgeführt, wenn * Word beendet bzw.
  • das Add-In entladen wird | Ausschließlich Add-Ins und Normal.dot(m) |} === Excel === {| class="wikitable" ! style="text-align:left;" | Name ! style="text-align:left;" | Beschreibung ! style="text-align:left;" | Anwendungsbereich |- style="vertical-align:top;" | Auto_Open | Wird ausgeführt, wenn
  • diese Arbeitsmappe / diese Vorlage geöffnet wird
  • dieses Add-In geladen bzw. Excel gestartet wird | Vorlagen
    Arbeitsmappen
    Add-Ins |- style="vertical-align:top;" | Auto_Close | Wird ausgeführt, wenn
  • diese Arbeitsmappe / diese Vorlage geschlossen wird
  • dieses Add-In entladen bzw. Excel beendet wird | Vorlagen
    Arbeitsmappen
    Add-Ins |}

PowerPoint

In PowerPoint stehen die Auto-Makros ausschließlich in Add-Ins zur Verfügung. Wenn Sie auch in einer Präsentation einen Weg benötigen, um beim Starten / Laden etwas auszuführen (um zum Beispiel auf Ereignisse zuzugreifen), können Sie (ab PowerPoint 2007) alternativ ein (leeres) Ribbon erzeugen und dessen 'onLoad'-Callback einsetzen. {| class="wikitable" ! style="text-align:left;" | Name ! style="text-align:left;" | Beschreibung ! style="text-align:left;" | Anwendungsbereich |- style="vertical-align:top;" | Auto_Open | Wird ausgeführt, wenn

  • dieses Add-In geladen bzw. PowerPoint gestartet wird | Ausschließlich in Add-Ins |- style="vertical-align:top;" | Auto_Close | Wird ausgeführt, wenn
  • dieses Add-In entladen bzw. PowerPoint beendet wird | Ausschließlich in Add-Ins |} == Ereignisse == === Ereignisklasse === 1. Deklarieren Sie eine Objektvariable, welche die Anwendung entgegennehmen soll, deren Ereignisse Sie empfangen möchten. Beachten Sie dabei das Schlüsselwort WithEvents: Private WithEvents myEvents As Application 2. Initialisieren Sie diese Variable bei der Initialisierung der Klasse. Private Sub Class_Initialize() Set myEvents = Application End Sub 3. Nun steht Ihnen eine Liste der Add-Ins bereit: * Setzen Sie die Auswahl 'Objekt' auf 'myEvents' * Wählen Sie in der Liste 'Prozedur' das gewünschte Ereignis Bitte beachten: Verwenden Sie immer die Prozedur-Liste, um ein neues Ereignis hinzuzufügen, weil viele Ereignisse Übergabeparameter verwenden.

Ereignisprozedur