Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Spezielle Klassen - Teil 5 - Application
zurück: Zugriff auf alle offenen Word-Instanzen weiter: Text direkt auf dem Bildschirm ausgeben Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Tutorial Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Isabelle :-)
Menschin


Verfasst am:
28. Apr 2013, 00:45
Rufname:
Wohnort: Westlicher Spiralarm der Galaxis


Spezielle Klassen - Teil 5 - Application - Spezielle Klassen - Teil 5 - Application

Nach oben
       Version: Office 2k (2000)

Hallöchen,

weil’s doch immer wieder mal benötigt wird, hier mal ein Beispiel für das Abfangen von Events der Application-Klasse. Die Events dieser Klasse sind zum größten Teil identisch mit denen der Workbook-Klasse. Nur dass sie auf jede Mappe angewendet werden die in derselben Excelinstanz geöffnet werden.

Der Unterschied zu den anderen Event-Klassen besteht darin, dass das Application-Objekt nicht per Property Set an die Klasse übergeben werden muss, da es ein Globales Objekt ist. Wir können also die Event-Variable direkt im Initialize-Event der Klasse setzen.

Ich geh jetzt mal davon aus, dass sich die Klasse in einem Addin befindet. In der Klasse reagieren wir auf das Anlegen von neuen Arbeitsmappe und auf das Öffnen vorhandener Mappen. Es gibt natürlich auch noch andere Events welche sich damit abfangen lassen. Diese findest du, in der rechten Combobox über dem Codefenster, wenn du in der linken Combobox die Event-Variable ausgewählt hast.

Die MsgBox machen natürlich keinen Sinn, die sind nur zum Spielen drin, denn was du in den Events aufrufst bleibt natürlich dir überlassen.

Die Abfrage im "WorkbookOpen" ist notwendig, da das öffnen eines Addins dieses Event auch auslöst.

Im Modul "DieseArbeitsmappe":

Code:
Option Explicit

Private mobjApplicationClass As clsApplication

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Set mobjApplicationClass = Nothing
End Sub

Private Sub Workbook_Open()
    Set mobjApplicationClass = New clsApplication
End Sub


In einem Klassenmodul mit dem Namen "clsApplication":

Code:
Option Explicit

Private WithEvents mobjApplication As Application

Private Sub Class_Initialize()
    Set mobjApplication = Application
End Sub

Private Sub Class_Terminate()
    Set mobjApplication = Nothing
End Sub

Private Sub mobjApplication_NewWorkbook(ByVal Wb As Workbook)
    Call MsgBox(Wb.Name)
End Sub

Private Sub mobjApplication_WorkbookOpen(ByVal Wb As Workbook)
    If Not Wb.IsAddin Then Call MsgBox(Wb.Name)
End Sub

_________________
LG Isi

Die Mitgliedschaft im Forum erhöht deine Chance auf eine Antwort von mir um 99,999%
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Summenprodukt Teil einer zahl suchen und zählen 11 formicacid 3330 28. Mai 2008, 17:09
HermannZ Summenprodukt Teil einer zahl suchen und zählen
Keine neuen Beiträge Excel Formeln: Hilfe bei verschaltelter Wenn-Funktion benötigt - Teil 2 2 Ruhrpottfriese 498 19. Mai 2008, 10:19
Ruhrpottfriese Hilfe bei verschaltelter Wenn-Funktion benötigt - Teil 2
Keine neuen Beiträge Excel Formeln: Summenprodukt mit Bedingung Teil der Zelle zB *NAV* ??? 5 Tobias.Sturm 1699 13. Mai 2008, 17:17
Tobias.Sturm Summenprodukt mit Bedingung Teil der Zelle zB *NAV* ???
Keine neuen Beiträge Excel Formeln: Aus einer Zelle ein Teil entnehmen 2 Rantanplan78 388 17. Apr 2008, 08:31
Rantanplan78 Aus einer Zelle ein Teil entnehmen
Keine neuen Beiträge Excel Formeln: teil aus zeile löschen 4 freshbarcode 1111 25. Feb 2008, 20:50
freshbarcode teil aus zeile löschen
Keine neuen Beiträge Excel Formeln: teil der werte vergleichen und diese dann nicht übernehmen?? 2 redcab 485 11. Feb 2008, 12:07
Gast teil der werte vergleichen und diese dann nicht übernehmen??
Keine neuen Beiträge Excel Formeln: Kann Mir Jemand Helfen - WENN, SVERWEIS, TEIL 2 Ekin 798 13. Nov 2007, 16:36
Claudy Kann Mir Jemand Helfen - WENN, SVERWEIS, TEIL
Keine neuen Beiträge Excel Formeln: Spezielle Funktion gesucht 3 Gast 576 27. Okt 2007, 20:37
Hübi Spezielle Funktion gesucht
Keine neuen Beiträge Excel Formeln: Alterseinteilung nach Klassen 2 Dagobert2411 1291 06. Sep 2007, 13:18
Dagobert2411 Alterseinteilung nach Klassen
Keine neuen Beiträge Excel Formeln: Teil 3 JOMO1000 375 27. Apr 2007, 12:43
Gast Teil
Keine neuen Beiträge Excel Formeln: Schichtzeiten in Klassen gruppieren 3 maximusquo 1077 11. Jan 2007, 00:35
maximusquo Schichtzeiten in Klassen gruppieren
Keine neuen Beiträge Excel Formeln: Teil eines Wertes 2 Excel_Stefan 502 27. Okt 2006, 12:31
Excel_Stefan Teil eines Wertes
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft-Excel Diagramme