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

Makro importieren

Makro importieren
14.12.2015 08:58:37
kultnoob
Hi zusammen,
hab hier ein kleines Verständnisproblem und brauche eure Hilfe.
Über eine Datei mit Userform, öffne ich Datei 1 (neuer Abzug) und Datei 2 (alter Abzug). Diese werden abgeglichen und Datei 1 wird ein wenig bearbeitet.
Nun werden zwei Makros aus einer .bas Datei geladen.
Danach werden zwei Buttons in Datei 1 (Formularsteuerelemente) einfügt und diese mit dem Makro verknüpft.
Im nächsten Schritt wird die Datei 1 unter neuem Namen gespeichert.
Bisher klappt das auch alles... ABER
Problem: --> Die neue Datei (ich nenne Sie Datei 3) kann geöffnet werden, die Buttons sind vorhanden aber wenn ich auf die Buttons klicke, dann öffnet sich die Datei mit der Userform obwohl die Makros importiert wurden. Wenn ich den Vorgang manuell ausführe, sprich den Button anklicke und Makro zuweise, geht es plötzlich. Wie kann ich dies aber innerhalb der Syntax lösen?
Anbei ein Auszug...
Workbooks(Neu) ist Datei 1
Workbooks(Alt) ist Datei 2

Workbooks(Neu).VBProject.VBComponents.Add (1)
Workbooks(Neu).VBProject.VBComponents.Add (1)
With ActiveWorkbook.VBProject
.VBComponents.Import "C:\USERS\" & Environ("UserName") & "\desktop\FTE-Planung auf  _
Kostenstellen\Archiv (nicht loeschen)\Variable_Summenberechnung.bas"
.VBComponents.Import "C:\USERS\" & Environ("UserName") & "\desktop\FTE-Planung auf  _
Kostenstellen\Archiv (nicht loeschen)\Summen_loeschen.bas"
End With
'Zeile 1 markieren
Rows("1:1").RowHeight = 35
'Formularsteuerelemente einfügen, Makro zuweisen und umbenennen
Workbooks(Neu).Sheets(1).Buttons.Add(190, 6, 245, 24).Select
With Selection
.OnAction = "Variable_Summenberechnung"
.Caption = "Summen berechnen"
End With
'Formularsteuerelemente einfügen, Makro zuweisen und umbenennen
Workbooks(Neu).Sheets(1).Buttons.Add(500, 6, 245, 24).Select
With Selection
.OnAction = "Summen_loeschen"
.Caption = "Summen löschen"
End With
'Datei auf dem Desktop speichern unter FTE-Auswertung und aktuellem Datum
Workbooks(Neu).SaveAs "C:\USERS\" & Environ("UserName") & "\desktop\" & "FTE-Auswertung " &  _
Format(Date, "yyyyMMdd"), FileFormat:=52
ActiveWorkbook.Close
Workbooks(Alt).Close
Application.Quit

Vielleicht muss ich das Makro aus einer .txt Datei importieren... Aber das klappt leider auch nicht... Bin zu blöd...
Wenn mir jemand einen Tipp geben kann, bzw. einen Ansatz, wäre ich sehr dankbar.
Gruß
kultnoob

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro importieren
14.12.2015 13:06:28
kultnoob
Hi zusammen,
habe es nun anders gelöst. Habe es geschafft, das Makro über eine .txt Datei in ein neues Modul zu laden. Es funktioniert.
Anbei noch die Lösung:

'Import der .txt-Datei Variable_Summenberechnung
Dim erstesModul As Object
Dim erstesModulName As String
Dim erstemakroImportDatei As String
erstesModulName = "Variable_Summenberechnung"
erstemakroImportDatei = "Pfad zur txt-Datei " 'muss angepasst werden
'Der Variable 'neuesModul' das Modul mit dem Namen 'Variable_Summenberechnung' zuweisen
Set erstesModul = ActiveWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule)
erstesModul.Name = erstesModulName
ActiveWorkbook.VBProject.VBComponents(erstesModulName).CodeModule. _
AddFromFile (erstemakroImportDatei)
Set neuesModul = Nothing
'Zeile 1 markieren
Rows("1:1").RowHeight = 35
'Formularsteuerelement einfügen für Variable Summenberechnung, Makro zuweisen und  _
umbenennen
ActiveWorkbook.Sheets(1).Buttons.Add(190, 6, 245, 24).Select
Selection.Caption = "Summen berechnen"
Selection.OnAction = "'" & Auswertung & "'!Variable_Summenberechnung. _
Variable_Summenberechnung"
Zum Ablauf...
1. Zuerst speichere ich die Datei unter neuem Namen.
2. Da der Dateiname variabel ist, vergebe ich einen neuen Namen der Datei.
3. Danach füge ich den Button ein.
4. Nun wird der Button umbenannt.
5. Jetzt wird das Makro dem Button zugewiesen.
Das war es schon.
Trotzdem vielen Dank für die Hilfe... :D
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige