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

VBA Code mit Makro einfügen

VBA Code mit Makro einfügen
21.07.2016 05:43:06
Olaf
Hallo
wie baue ich folgenden Code um, das ich eine Datei auswähle, und in die ausgewählte Datei einen Makro Code einfüge?
Sub Makro_einfuegen()
'öffnet die ausgewählte Datei
Dim varDatei As Variant
varDatei = Application.GetOpenFilename()
If varDatei = False Then
MsgBox "Der Benutzer hat abgebrochen.", vbInformation
'Else
' MsgBox "Folgende Datei wurde ausgewählt:" & vbCrLf & varDatei
End If
'fügt in die Tabelle Tabelle1 das Makro ein
Dim x As Integer
With Workbooks(varDatei).VBProject.VBComponents("Tabelle1").CodeModule
x = .CreateEventProc("SelectionChange", "Worksheet")
.InsertLines x + 1, "'dieses Makro wurde per Makro eingefügt"
.InsertLines x + 2, "MsgBox ""Hallo, Hallo !!!"""
End With
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Code mit Makro einfügen
21.07.2016 07:57:18
eres
Moin Olaf, versuch mal
Sub Makro_einfuegen()
'öffnet die ausgewählte Datei
Dim varDatei As Variant
varDatei = Application.GetOpenFilename()
If varDatei = False Then
MsgBox "Der Benutzer hat abgebrochen.", vbInformation
'   Else
'        MsgBox "Folgende Datei wurde ausgewählt:" & vbCrLf & varDatei
End If
Application.EnableEvents = False
Workbooks.Open varDatei
Application.EnableEvents = True
'fügt in die Tabelle Tabelle1 das Makro ein
Dim x As Integer
With Workbooks(ActiveWorkbook.Name).VBProject.VBComponents("Tabelle1").CodeModule
x = .CreateEventProc("SelectionChange", "Worksheet")
.InsertLines x + 1, "'dieses Makro wurde per Makro eingefügt"
.InsertLines x + 2, "MsgBox ""Hallo, Hallo !!!"""
End With
End Sub
Gruß
erwin
Anzeige
AW: VBA Code mit Makro einfügen
21.07.2016 08:05:43
baschti007
So vielleicht
Sub copy_VBAcode()
Dim varDatei As Variant
Dim y As String
Dim i As Integer
Dim scode1 As String
Dim myVBComponents As Object
Application.DisplayAlerts = False
varDatei = Application.GetOpenFilename() ' Datei wählen
If varDatei = False Then
MsgBox "Der Benutzer hat abgebrochen.", vbInformation: Exit Sub
End If
y = Right(CStr(varDatei), InStr(1, StrReverse(CStr(varDatei)), "\") - 1) ' Dateiname
With ThisWorkbook.VBProject.VBComponents("Tabelle1").CodeModule '--- Zeichnet den Code von  _
Tabelle1 in dieser Arbeitsmappe auf
scode1 = .Lines(1, .CountOfLines)
End With
Workbooks.Open Filename:=varDatei ' öffnet die neue arbeitsmappe
With Workbooks(y).VBProject.VBComponents("Tabelle1").CodeModule '--- Löscht den code in der  _
Neuen Arbeitsmappe in Tabelle1
.DeleteLines 1, .CountOfLines
End With
Workbooks(y).VBProject.VBComponents("Tabelle1").CodeModule.AddFromString scode1 '- fügt den  _
neunen  code ein
Workbooks(y).Save
Workbooks(y).Close
'Application.VBE.MainWindow.Visible = False 'blendet Vba aus
End Sub

Gruß Basti
Anzeige
AW: VBA Code mit Makro einfügen
21.07.2016 10:05:04
Olaf
Danke an eres und baschti
funzt beides.

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige