Anhang: Unterschied zwischen den Versionen

Aus VBA-wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 14: Zeile 14:


Die Office Anwendungen unterscheiden sich allerdings in der Art und Weise, wie Add-Ins erstellt, eingebunden, bearbeitet und gespeichert werden:
Die Office Anwendungen unterscheiden sich allerdings in der Art und Weise, wie Add-Ins erstellt, eingebunden, bearbeitet und gespeichert werden:
* [[Word Add-Ins]]
* [[Excel Add-Ins]]
* [[Excel Add-Ins]]
* [[PowerPoint Add-Ins]]
* [[PowerPoint Add-Ins]]
Zeile 99: Zeile 100:
== Ereignisse ==
== Ereignisse ==


=== Ereignisklasse ===  
=== 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:
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'
* 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.
* 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.

Version vom 23. November 2017, 09:24 Uhr

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:

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

Name Beschreibung Anwendungsbereich
AutoNew Wird ausgeführt, wenn
  • von dieser Vorlage ein neues Dokument erzeugt wird
Vorlagen
AutoOpen Wird ausgeführt, wenn
  • dieses Dokument
  • Diese Vorlage geöffnet wird
Vorlagen
Dokumente
AutoClose Wird ausgeführt, wenn
  • dieses Dokument
  • Diese Vorlage geschlossen wird
Vorlagen
Dokumente
AutoExec Wird ausgeführt, wenn
  • Word gestartet bzw.
  • das Add-In geladen wird
Ausschließlich Add-Ins und Normal.dot(m)
AutoExit Wird ausgeführt, wenn
  • Word beendet bzw.
  • das Add-In entladen wird
Ausschließlich Add-Ins und Normal.dot(m)

Excel

Name Beschreibung Anwendungsbereich
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
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.

Name Beschreibung Anwendungsbereich
Auto_Open Wird ausgeführt, wenn
  • dieses Add-In geladen bzw. PowerPoint gestartet wird
Ausschließlich in Add-Ins
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

1. Deklarieren Sie eine Objektvariable, welche die Ereignisklasse entgegennimmt. Da der Zugriff auf die Ereignisse permanent sein soll, verwenden Sie eine Modulvariable: Private myEvents As clsEvents 2. Erstellen Sie eine Prozedur, welche die Ereignisklasse instanziiert. Hierfür eignet sich das passende Auto-Makro, welches beim Starten bzw. Öffnen ausgeführt wird.