Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
828to832
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
828to832
828to832
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mit Makro in eine andere Datei Makro schreiben

Mit Makro in eine andere Datei Makro schreiben
14.12.2006 09:17:04
Jakob
Hallo,
ich würde gerne mit einen Makro, folgenden Makro in eine andere Datei schreiben. Geht das? Hintergrund ist, dass ich für einen wiederkehrenden Bericht Navigationsschaltflächen in diesen Bericht automatisch erstellen möchte.
-------------------------------------

Sub Gesamt2007()
With ActiveChart.PivotLayout.PivotTable.PivotFields("Commercial Line Code")
.Orientation = xlPageField
.Position = 1
End With
With ActiveChart.PivotLayout.PivotTable.PivotFields("Country Code")
.Orientation = xlPageField
.Position = 1
End With
ActiveChart.PivotLayout.PivotTable.PivotFields("Jahr").CurrentPage = "2007"
End Sub


Sub Gesamt2006()
With ActiveChart.PivotLayout.PivotTable.PivotFields("Commercial Line Code")
.Orientation = xlPageField
.Position = 1
End With
With ActiveChart.PivotLayout.PivotTable.PivotFields("Country Code")
.Orientation = xlPageField
.Position = 1
End With
ActiveChart.PivotLayout.PivotTable.PivotFields("Jahr").CurrentPage = "2006"
End Sub

-------------------------------------
Vielen Dank im Voraus für Eure Hilfe.
Gruß
Jakob

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

Betreff
Datum
Anwender
Anzeige
AW: Mit Makro in eine andere Datei Makro schreiben
14.12.2006 10:37:39
Hoffi
Hallo Jakob,
ich würde es so machen, das ich das gesmate Modul in die andere Datei exportiere und im Workbook_Open Ereignis dieser Datei dann die Makros aufrufe. Das würde dann so gehen.
Sub Modul_Export()
Dim Wb As Workbook
Dim Datei As String
Dim Pfad As String
Application.ScreenUpdating = False
Datei = "C:\Test.xls" 'hier der Name der Datei in die es rein soll
Pfad = "C:\mod.bas"
ThisWorkbook.VBProject.VBComponents("Modul2").Export Pfad 'Name des Moduls eventuell anpassen
Set Wb = Workbooks.Open(Datei)
Application.VBE.MainWindow.Visible = True
    With Wb.VBProject.VBComponents(Wb.CodeName).CodeModule
    .InsertLines 3, "Private sub Workbook_Open()"
    .InsertLines 4, "Call Gesamt2007"
    .InsertLines 5, "Call Gesamt2006"
    .InsertLines 6, "End Sub"
    End With
ActiveWorkbook.VBProject.VBComponents.Import Pfad
Kill Pfad
Wb.Close True
Application.VBE.MainWindow.Visible = False
Application.ScreenUpdating = True
End Sub


Grüße
Hoffi
P.S. Rückmeldung wäre nett...
Anzeige
AW: Mit Makro in eine andere Datei Makro schreiben
14.12.2006 17:30:10
Jakob
Hallo Hoffi,
ich habe versucht Dein Makro meinen Bedürfnissen nach anzupassen. Ich habe wie vorgeschlagen meinen Code in die Datei "Schaltflaechen.bas" exportiert.
Ich habe aktuell ein Problem mit der folgenden Zeile:
Workbooks("Schaltflaechen.xls").VBProject.VBComponents("Schaltflaeche").Export Pfad 'Name des Moduls eventuell anpassen
Wie müßte der Code aussehen, damit "Schaltflaechen.bas" in die Datei "ADS Analyse.xls" eingefügt wird.
Vielen Dank für Deine Hilfe.
Gruß
Jakob
-------------------------------------------------------------------
Sub Modul_Export()
Dim Wb As Workbook
Dim Datei As String
Dim Pfad As String
Application.ScreenUpdating = False
Datei = "C:\Documents and Settings\dl336\SapWorkDir\ADS\ADS Analyse.xls" 'hier der Name der Datei in die es rein soll
Pfad = "C:\Documents and Settings\dl336\SapWorkDir\ADS\Schaltflaechen.bas"
'ThisWorkbook.VBProject.VBComponents("Modul2").Export Pfad 'Name des Moduls eventuell anpassen
Workbooks("Schaltflaechen.xls").VBProject.VBComponents("Schaltflaeche").Export Pfad 'Name des Moduls eventuell anpassen
Set Wb = Workbooks.Open(Datei)
Application.VBE.MainWindow.Visible = True
With Wb.VBProject.VBComponents(Wb.CodeName).CodeModule
' .InsertLines 3, "

Private Sub Workbook_Open()"
'    .InsertLines 4, "Call Gesamt2007"
'    .InsertLines 5, "Call Gesamt2006"
'    .InsertLines 6, "End Sub
"
End With
ActiveWorkbook.VBProject.VBComponents.Import Pfad
Kill Pfad
Wb.Close True
Application.VBE.MainWindow.Visible = False
Application.ScreenUpdating = True
End Sub
-------------------------------------------------------------------
Anzeige
AW: Mit Makro in eine andere Datei Makro schreiben
18.12.2006 10:25:21
Hoffi
Hallo Jakob,
wie heisst den das Modul?
Schaltflaeche oder Schaltflaechen?
der Name des Moduls, das Du exportietren willst muss hier hin:
ThisWorkbook.VBProject.VBComponents("Modul2").Export Pfad 'anstelle Modul2 kommt der Name Deines Moduls
Du musst das Modul in Deiner Mappe Schaltflaechen.xls drinn haben, diese Datei muss dann auch geöffnet sein. Deswegen, ThisWorkbook...
Grüße
Hoffi

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige