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

Aktion wenn irgendeine Datei geöffnet wi

Forumthread: Aktion wenn irgendeine Datei geöffnet wi

Aktion wenn irgendeine Datei geöffnet wi
08.12.2020 01:46:44
MLoew
Hallo zusammen,
vorab: ich hab zu meinem Problem folgende Antwort gefunden
https://www.herber.de/forum/archiv/160to164/160552_Application_Ereignisse.html.
Nur ich komm nicht klar damit.
Hier mein Problem:
Ich hab ein AddIn. Wenn jetzt eine Datei mit einem bestimmten Dateinamen geöffnet wird soll eine Aktion ablaufen.
Lt. dem alten Post muss ich das machen:
In ein normales Modul:
Public AppObject As New clsEvents
In ein Klassenmodul namens clsEvents:
Public WithEvents ap As Application
Private Sub ap_WorkbookBeforeClose(ByVal Wb As Workbook, Cancel As Boolean)
Dein Code...
End Sub

Die Zuweisung
Set AppObject.ap = Application
gehört in das WorkbookOpenEreignis.
Mit meinen Worten
1:Ich öffne irgendein normales Modul
Nach Option Explicit kommt der Text
Public AppObject As New clsEvents
2: Ich erstelle ein neues Klassenmodul mit dem Name clsEvents
Da kommt der Text rein:
Public WithEvents ap As Application

Private Sub ap_WorkbookBeforeClose(ByVal Wb As Workbook, Cancel As Boolean)
msgbox ("Aktion ausführen").
End Sub

3: Unter Diese Arbeitsmappe wird folgender Text reingepackt

Private Sub Workbook_Open()
Set AppObject.ap = Application
End Sub

Nur es kommt keine MSGBOX als Kontrolle.
Hat jemand ne Idee, was ich falsch mache bzw gibt es einen anderen (besseren) Weg?
Danke euch.
Gruß Markus
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Aktion wenn irgendeine Datei geöffnet wi
08.12.2020 13:15:39
volti
Hallo Markus,
hier mein Vorschlag. Hoffe, da kommst Du besser mit zurecht....
Dies in ein Klassenmodul clsApplication
Code:
[Cc]

Private WithEvents coApplication As Application Private Sub Class_Initialize() Set coApplication = Application End Sub Private Sub Class_Terminate() Set coApplication = Nothing End Sub 'Workbook geöffnet Private Sub coApplication_WorkbookOpen(ByVal Wb As Workbook) If Wb.Name Like "Klassenprogrammierung.xls*" Then MsgBox "Workbook geöffnet " & Wb.Name End If End Sub 'Workbook aktiviert Private Sub coApplication_WorkbookActivate(ByVal Wb As Workbook) If Wb.Name Like "Klassenprogrammierung.xls*" Then MsgBox "Workbook aktiviert " & Wb.Name End If End Sub


und dies in das "DieseArbeitsmappe"-Modul:
Code:
[Cc]

Private coApplicationClass As clsApplication Private Sub Workbook_Open() Set coApplicationClass = New clsApplication End Sub

_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz

Anzeige
AW: Aktion wenn irgendeine Datei geöffnet wi
08.12.2020 23:46:09
MLoew
Hi KH,
ich darf mich mal wieder bei dir bedanken.
LG
Markus
;

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