Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ereigniss in Klassenmodul

Forumthread: Ereigniss in Klassenmodul

Ereigniss in Klassenmodul
28.03.2005 15:02:24
Bertram
Hallo ihr lieben Exceler,
hoffe ihr habt ein schönes Osterfest. Ich schlage mich leider wieder mal mit einem Problem herum.
Ich bilde mir ein in VBA recht fit zu sein, aber ich experimentiere zur Zeit mit AddIns und Klassenmodulen herum. Da ich das erste mal mit klassenmodulen programmiere, hoffe ich mein Problem verständlich rüber zu bringen.
Also: Ich möchte in einem AddIn eigene Ereignisse in ein Klassenmodul schreiben und benutzen. In der VBA-Hilfe fand ich dazu folgendes:
'Bevor Sie Ereignisse mit dem Application-Objekt verwenden können, müssen Sie ein neues Klassenmodul erstellen und ein Objekt des Typs Application mit Ereignissen deklarieren. Nehmen Sie beispielsweise an, ein neues Klassenmodul mit Namen EventClassModule wird erstellt. Es enthält folgenden Code:
Public WithEvents App As Application
Nachdem das neue Objekt mit Ereignissen deklariert worden ist, erscheint es in dem Object-Dropdown-Listenfeld im Klassenmodul, und Sie können Ereignisprozeduren dafür schreiben. (Wenn Sie das neue Objekt im Object-Feld auswählen, werden die für das Objekt gültigen Ereignisse im Procedure-Dropdown-Listenfeld aufgeführt.)
Bevor jedoch die Prozeduren ausgeführt werden können, müssen Sie das deklarierte Objekt im Klassenmodul mit dem Application-Objekt verbinden. Sie erreichen dies mit dem folgenden Code aus einem beliebigen Modul.
Dim X As New EventClassModule

Sub InitializeApp()
Set X.App = Application
End Sub

Nachdem Sie die InitializeApp-Prozedur ausgeführt haben, deutet das App-Objekt im Klassenmodul auf das Microsoft Excel Application-Objekt, und die Ereignisprozeduren im Klassenmodul werden ausgeführt, wenn die Ereignisse eintreten.'
So weit so gut. Das habe ich umgesetzt und es funktioniert. Allerdings funktionieren die Ereignisse nach beenden von Excel nicht mehr automatisch (logisch). Wo muss ich die Prozedur

Sub InitializeApp()
einfügen, damit die eigenen Ereignisse sofort nach dem Excelstart funktionieren?
Hoffe ich habe mich verständlich ausgedrückt.
Danke schon mal für jede Hilfe.
Gruß
Bertram

		
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ereigniss in Klassenmodul
28.03.2005 15:17:44
Bert
in Workbook_Open:
call InitializeApp
Bert
AW: Ereigniss in Klassenmodul
28.03.2005 15:34:44
Bertram
Hallo Bert,
kurz und prägnant. Du hast natürlch recht. Ich sehe schon den Wald nicht mehr, du weißt schon:-)
Danke und Gruß
Bertram
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige