Anhang: Unterschied zwischen den Versionen

Aus VBA-wiki
Zur Navigation springen Zur Suche springen
(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…“)
 
Keine Bearbeitungszusammenfassung
Zeile 5: Zeile 5:
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)
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
* 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
* 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
* 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 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:
* 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]]
* [[Excel Add-Ins]]


Zeile 17: Zeile 22:
=== Word ===
=== Word ===


{| class="wikitable" ! style="text-align:left;" | Name ! style="text-align:left;" | Beschreibung ! style="text-align:left;" | Anwendungsbereich |- style="vertical-align:top;" | AutoNew | Wird ausgeführt, wenn * von dieser Vorlage ein neues Dokument erzeugt wird | Vorlagen |- style="vertical-align:top;" | AutoOpen | Wird ausgeführt, wenn
{| class="wikitable"
! style="text-align:left;" | Name
! style="text-align:left;" | Beschreibung
! style="text-align:left;" | Anwendungsbereich
|- style="vertical-align:top;"
| AutoNew
| Wird ausgeführt, wenn
* von dieser Vorlage ein neues Dokument erzeugt wird
| Vorlagen
|- style="vertical-align:top;"
| AutoOpen
| Wird ausgeführt, wenn
* dieses Dokument
* dieses Dokument
* diese Vorlage geöffnet wird | Vorlagen<br>Dokumente |- style="vertical-align:top;" | AutoClose | Wird ausgeführt, wenn
* Diese Vorlage geöffnet wird
| Vorlagen<br>Dokumente
|- style="vertical-align:top;"
| AutoClose
| Wird ausgeführt, wenn
* dieses Dokument
* dieses Dokument
* diese Vorlage geschlossen wird | Vorlagen<br>Dokumente |- style="vertical-align:top;" | AutoExec | Wird ausgeführt, wenn * Word gestartet bzw.
* Diese Vorlage geschlossen wird
* 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.
| Vorlagen<br>Dokumente
* 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
|- style="vertical-align:top;"
* diese Arbeitsmappe / diese Vorlage geöffnet wird
| AutoExec
* dieses Add-In geladen bzw. Excel gestartet wird | Vorlagen<br>Arbeitsmappen<br>Add-Ins |- style="vertical-align:top;" | Auto_Close | Wird ausgeführt, wenn
| Wird ausgeführt, wenn
* diese Arbeitsmappe / diese Vorlage geschlossen wird
* Word gestartet bzw.
* dieses Add-In entladen bzw. Excel beendet wird | Vorlagen<br>Arbeitsmappen<br>Add-Ins |}
* 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<br>Arbeitsmappen<br>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<br>Arbeitsmappen<br>Add-Ins  
|}


=== PowerPoint ===
=== 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
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.
* dieses Add-In geladen bzw. PowerPoint gestartet wird | Ausschließlich in Add-Ins |- style="vertical-align:top;" | Auto_Close | Wird ausgeführt, wenn
{| class="wikitable"
* 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.
! 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 ===
=== Ereignisprozedur ===

Version vom 23. November 2017, 08:59 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