Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1892to1896
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

Macro exportieren

Macro exportieren
06.08.2022 16:55:16
Udo
Hallo Excel Experten.
Ich habe mal wieder eine Frage zu einem Makro.
Ich habe mir im Netz ein Makro gesucht um meine Makros zu exportieren.
Ich habe folgendes gefunden:

Public Sub Macro_Export()
If Dir("F:\sicherung\daten\makros\xxx", vbDirectory) = "" Then
MkDir ("F:\sicherung\daten\makros\xxx")
End If
Dim objVBComponent As Object
Dim objWorkbook As Workbook
Dim strType As String
Set objWorkbook = Workbooks("xxx.xlsm")
For Each objVBComponent In objWorkbook.VBProject.VBComponents
With objVBComponent.CodeModule
Select Case objVBComponent.Type
Case 1
strType = ".bas"
Case 2, 100
strType = ".cls"
Case 3
strType = ".frm"
End Select
objWorkbook.VBProject.VBComponents(objVBComponent.Name).Export _
"F:\sicherung\daten\makros\xxx\" & objVBComponent.Name & strType
End With
Next
End Sub
Das klappt soweit ganz gut.
Gibt es jetzt eine möglichkeit das das makro in der zeile :
Set objWorkbook = Workbooks("xxx.xlsm")
auf jede datei die geöffnet ist zu reagieren, damit ich nicht in jeder datei den eintrag ändern muss.
Ich wollte das makro in meiner personal.xlsb datei ablegen, um sofort darauf zurück greifen zu können.
danke im voraus.
Udo

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Macro exportieren
06.08.2022 18:55:57
Mullit
Hallo,
einfach die Schleife um Deine Componentschleife legen:

For Each objWorkbook In Workbooks
Next
Gruß, Mullit
AW: Macro exportieren
07.08.2022 09:31:22
udo
Guten morgen Mullit.
Danke für deinen Tip. Der klappt wunderbar.
Wäre es unverschämt wenn du mir jetzt noch helfen könntest, damit ich bei:
objWorkbook.VBProject.VBComponents(objVBComponent.Name).Export _
"F:\sicherung\daten\makros\xxx\" & objVBComponent.Name & strType
den Speicherort abfragen lasse und auswählen könnte.
Danke dafür.
Gruß
Udo
AW: Macro exportieren
07.08.2022 14:35:10
udo
Hallo Rene.
Danke für deinen Tip.
Leider ist das nicht was ich wollte. Er fragt mich bei jeder datei die exportiert werden soll, wo ich sie hinspeichern soll.
Da ich in etwas 20 dateien jeweils etwa 5 Macro pro datei habe wäre das ziemlich unübersichtlich.
Das makro soll eigentlich nur das Verzeichnis abfragen, wohin die bas und cls dateien aus der jeweiligen Arbeitsmappe exportiert werden sollten.
Also danke nochmal für deine Mühe.
Gruß
Udo
AW: Macro exportieren
07.08.2022 20:02:51
Mullit
Hallo,
hm, dann müsstest Du bspw den Filedialog nehmen, willst Du die Abfrage für jede Datei haben, dann müsste der Code in die Workbooks-Schleife gesetzt werden, nicht in die Componentschleife...und dann so der Spur nach...

Dim objFileDialog As FileDialog
Dim strPath As String
Set objFileDialog = Application.FileDialog(fileDialogType:=msoFileDialogFolderPicker)
With objFileDialog
.InitialFileName = "F:\sicherung\daten\makros" '// Pfad anpassen...!!!!
If .Show Then
strPath = .SelectedItems(1)
'// Hier dein Component-Code...
Else
Set objFileDialog = Nothing
Exit Sub
End If
End With
Gruß, Mullit
Anzeige
Fertig, kann geschlossen werden
08.08.2022 10:52:26
udo
Guten morgen Mullit.
So habe ich mir das gedacht.
Danke für deine Arbeit, und bis bald.
Gruß
Udo
AW: alles klar, sauber....owT
08.08.2022 16:44:14
Mullit

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige