Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1668to1672
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
Inhaltsverzeichnis

Workbook Methode über vba zuweisen

Workbook Methode über vba zuweisen
21.01.2019 20:42:35
Mayer
Hallo zusammen,
ich würde gerne aus einer xlsm-Datei mit vba ein willkürliches Workbook öffnen dann etwas dort markieren, anschließend das Workbook schließen und bestimmte Informationen über das Markierte weiterverwenden.
Ich habe mir gedacht die "Workbook_BeforeClose" -Methode des ausgewählten Workbooks als Ereignis herzunehmen. Kann man das über vba ohne das Workbook jemals zu öffnen? Also in einem Worbook eine Methode überschreiben sowas wie: "Applikation.Workbooks("bla.xls").Workbook_BeforeClose = myWorkbook_BeforeClose"
(Ich hoffe man kann mein Problem einigermaßen verstehen)
Viele Grüße

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workbook Methode über vba zuweisen
21.01.2019 20:58:45
onur
Am Besten auch noch ohne Excel jemals zu öffnen ?
AW: Workbook Methode über vba zuweisen
21.01.2019 21:15:17
Sepp
Hallo Mayer,
wie soll man auf Methoden eines Objektes zugreifen, wenn das Objekt gar nicht existiert?
Öffne das Workbook, schreib deine Daten in ein Array und arbeite damit weiter.
 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Workbook Methode über vba zuweisen
21.01.2019 21:22:03
Mayer
ich habe mir das als Grundlage genommen:
https://stackoverflow.com/questions/41226485/dynamically-create-macros-specifically-udfs-from-vba-code
nur muss ich das noch für die Workbook_BeforeClose hinbekommen
AW: Workbook Methode über vba zuweisen
21.01.2019 22:08:25
Sepp
Hallo Mayer,
warum schreibst du dann nicht gleich, dass du Code einfügen möchtest?
Das geht z.B. so.
Sub addProc()
  Dim objWB As Workbook, lngLine As Long
  
  Set objWB = Workbooks.Open("D:\Downloads\Forum\test.xlsm")
  
  With objWB
    With .VBProject.VBComponents(.VBProject.VBComponents(1).Name).CodeModule
      lngLine = .CreateEventProc("BeforeClose", "Workbook")
      .InsertLines lngLine + 1, "MsgBox ""Hello world!"""
    End With
    .Close True
  End With
  
  Set objWB = Nothing
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Workbook Methode über vba zuweisen
21.01.2019 22:10:32
onur
Er will das aber einfügen (und ausführen lassen?), OHNE die Datei zu öffnen.
AW: Workbook Methode über vba zuweisen
22.01.2019 09:05:45
Daniel
Hi
das was du in deinem ersten Satz beschreibst, kann man ganz normal mit VBA erledigen, ohne die von dir genannten Ereignismakros nutzen zu müssen.
beschreibe zuerst einmal genauer, was du erreichen willst, dann können wir uns Gedanken darüber machen, wie du das am besten machst.
Gruß Daniel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige