Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1672to1676
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Code beim Öffnen einer jeden Mappe ausführen
13.02.2019 14:49:55
Sven
Hallo zusammen,
ich möchte einen Codeblock beim Öffnen einer jeden Mappe ausführen. Er soll also nicht in worbook_open einer Mappe liegen, sondern im installierten Addin. Wie mache ich das?
Grüße
Sven

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code beim Öffnen einer jeden Mappe ausführen
13.02.2019 15:09:30
Daniel
Hallo Sven,
du kannst den Code zum Beispiel in deine Personal.xlsb unter DieseArbeitsmappe eintragen. Dann wird dieser bei jedem Öffnen einer Mappe ausgeführt.
Gruß
Daniel
AW: Code beim Öffnen einer jeden Mappe ausführen
13.02.2019 15:18:02
Sven
Hallo Daniel,
er müsste aber in ein Addin, welches einem größeren Nutzerkreis zur Verfügung gestellt wird. Dieses Addin läuft also eh schon bei jedem Anwender.
Grüße
Sven
Mit Klassenprogrammierung und einem...
13.02.2019 15:19:43
EtoPHG
einem, _WorkBook_Open() Event, geht das Sven.
Im Netz gibt es Beispiele zur Klassenprogrammierung.
Gruess Hansueli
AW: Code beim Öffnen einer jeden Mappe ausführen
13.02.2019 15:39:38
Nepumuk
Hallo Sven,
im Modul "DieseArbeitsmappe":
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":
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_WorkbookOpen(ByVal Wb As Workbook)
    MsgBox Wb.Name
End Sub

An Stelle der MsgBox kommt natürlich dein Code.
Gruß
Nepumuk
Anzeige
AW: Code beim Öffnen einer jeden Mappe ausführen
13.02.2019 16:47:26
Sven
Super, vielen Dank.
Funktioniert.
Ich muss jedoch erst mal drüber sinnieren, was da genau passiert. :)
AW: Code beim Öffnen einer jeden Mappe ausführen
14.02.2019 11:35:37
Karl-Heinz
Hallo Max,
habe mich damit (Klassenprogrammierung) noch nicht intensiv beschäftigt. Hast Du vielleicht auch ein Beispiel für Worksheet-Activate, also dass mein AddIn mitkriegt, wenn in einer beliebigen anderen Mappe ein Blatt aktiviert wird.
Krieg es grad nicht hin....
viele Grüße
Karl-Heinz
AW: Code beim Öffnen einer jeden Mappe ausführen
14.02.2019 11:54:13
Nepumuk
Hallo Karl-Heinz,
das ist der identische Code, nur an stelle der Prozedur:
mobjApplication_WorkbookOpen
kommt das:
Private Sub mobjApplication_SheetActivate(ByVal Sh As Object)
    MsgBox Sh.Name
End Sub

Wähle in der linken Combobox über dem Codefenster mobjApplication, dann kannst du in der rechten Combobox die zur Verfügung stehenden Events auswählen.
Gruß
Nepumuk
Anzeige
AW: Code beim Öffnen einer jeden Mappe ausführen
14.02.2019 12:01:10
Karl-Heinz
Super,
vielen Dank.
VG KH

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige