Microsoft Excel

Herbers Excel/VBA-Archiv

Makros in Datei ausführen | Herbers Excel-Forum


Betrifft: Makros in Datei ausführen von: Jürgen
Geschrieben am: 04.01.2010 11:21:31

Hallo liebe Cracks,

ich habe hier einige Dateien die jeden Monat geöffnet werden müssen.
Nach öffnen muß im Blatt 'Input' der Button 'Create Schedule' gedrückt werden.
Im sich öffnenden Dialog muß der aktuelle Monat und das Jahr eingestellt werden.
Daraufhin wird ein Blatt erzeugt, z.B. Feb, 2010. Dieses Blatt muß gedruckt werden (eventuell über Button in dem Blatt) , die Arbeitsmappe gespeichert werden und die Mappe geschlossen werden.

Läßt sich dies realisieren ?

Gruß Jürgen

Anbei die Datei:
http://www.fileuploadx.de/981239

  

Betrifft: AW: Makros in Datei ausführen von: Yusuf
Geschrieben am: 04.01.2010 11:36:55

Moin,

ich habe mir die Datei nicht runtergeladen, jedoch kannst du all die schritte die du da beschreibst per Makrorecorder aufzeichnen und dann in die Datei als

Sub auto_open()
    
       "aufgezeichnetes Makro"   

End Sub
einfuegen.

du muesstest nur die Passage mit der Datumseinstellung anpassen, damit nicht immer Feb, 2010 eingetragen wird.

Da "VBA Bescheiden" kannst du auch das aufgezeichnete Makro hier posten und die "Datumspassage" wird hier angepasst.

Bin bei der Arbeit und kann aufgrund dessen deine Datei nicht downloaden.

Gruß
Yusuf


  

Betrifft: AW: Makros in Datei ausführen von: Jürgen
Geschrieben am: 04.01.2010 15:33:10

Hallo Yusuf,

ich habe versucht die Schritte per Makro aufzuzeichnen.
Das öffnen der Datei, das wechseln auf das Blatt"Input" geht.
Aber er läßt mich dann den Button 'Create Schedule' nicht drücken/benutzen.
Und das auf dem Button hinterlegte Makro konnte ich nicht über VBA aufrufen, da es sich auf einem anderen Blatt befindet ?

Gruß Jürgen


  

Betrifft: AW: Makros in Datei ausführen von: Yusuf
Geschrieben am: 05.01.2010 09:15:58

Hallo,

entschuldige, dass ich mich jetzt erst melde, da ich nur von der Arbeit aus zugriff habe.

Aber er läßt mich dann den Button 'Create Schedule' nicht drücken/benutzen.
Und das auf dem Button hinterlegte Makro konnte ich nicht über VBA aufrufen, da es sich auf  _
einem anderen Blatt befindet ?
Hm, dafuer habe ich leider keine Erklaerung, da der Makrorecorder auch das wechseln von Blaettern und Mappen mit aufzeichnet. Ich weiss leider nicht wie du genau vorgegangen bist und wodurch dieser "Fehler" verursacht worden sein koennte.


Da kann ich dir leider nicht weiter helfen.

Gruß
Yusuf


  

Betrifft: AW: Makros in Datei ausführen von: Reinhard
Geschrieben am: 04.01.2010 11:36:59

Hallo Will,

warum brauchen wir eine 4,4, MB große Mappe?

Gruß
Reinhard


  

Betrifft: AW: Makros in Datei ausführen von: Jürgen
Geschrieben am: 04.01.2010 11:46:36

Hallo Reinhard,

die Dateien sind leider alle so groß.
Da sie von meiner Arbeitsstelle sind. Ich möchte mir nur die Arbeit dort erleichtern.
Ich werde mal das von Yusuf vorgeschlagene machen und mich dann wieder melden, falls das Problem dann noch nicht erledigt ist.
Höchstens Du hast ne schnelle Lösung =)

Gruß Jürgen


  

Betrifft: AW: Makros in Datei ausführen von: Jürgen
Geschrieben am: 04.01.2010 11:47:22

Hatte den Haken in noch offen vergessen.


  

Betrifft: AW: Makros in Datei ausführen von: fcs
Geschrieben am: 05.01.2010 03:51:36

Hallo Jürgen,

im Prinzip funktioniert das folgende Makro.

Es öffnet die Standarddatei, startet das Makro zur Schedule-Erstellung (Dialog zur Monats-Jahresauswahl wird angezeigt). Nach dem Schliessen des Dialogs wird das neue Blatt gedruckt, die Datei gespeichert und geschlossen.

Falls du auf einen bestimmten Drucker drucken willst, dann muss du die Druckerauswahl am Beginn des Makros einbauen.

Das Makro speicherst du in einer separaten Datei in einem allgemeinen Modul. Zur Verbesserung des Bedienkoforts kann du es auch einer Schaltfläche aus den Formular-Steuerelementen zuweisen. Das Verzeichnis für den Standardplan muss du im Code natürlich anpassen.

Die Ausführung von Auto_Open und Auto_Close hab ich mal rausgenommen. Sie ist nach meiner Einschätzung nicht erforderlich, wenn man "nur" ein Schedulblatt aus den vorhandenen Daten erzeugt. Bei mir unter -Excel 2007- blieb dann nach dem Schließen auch noch ein Teil des Print-Menüs übrig, das die Auto_Open-Prozedur erzeugt. Außerdem mag ich es nicht, wenn Makros in meinen Menüs Änderungen machen.

Gruß
Franz

Option Explicit
Private Const VerzeichnisPlaene As String = "C:\Users\Public\Test\"

Sub Reinigungsplan_HS_50_1()
'   Erstellt unter Excel 2007
    Workbooks.Open Filename:=VerzeichnisPlaene _
        & "Standard Reinigungsplan_HS 50-1.xls"
'    Workbooks.Open(Filename:=VerzeichnisPlaene _
        & "Standard Reinigungsplan_HS 50-1.xls").RunAutoMacros Which:=xlAutoOpen
    Sheets("Input").Activate
    Application.Run "'Standard Reinigungsplan_HS 50-1.xls'!CreateSchedule"
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
    ActiveWorkbook.Save
'    ActiveWorkbook.RunAutoMacros Which:=xlAutoClose
    ActiveWindow.Close
End Sub



  

Betrifft: AW: Makros in Datei ausführen von: Jürgen
Geschrieben am: 05.01.2010 20:26:48

Hallo Franz,

hab mal das Makro grob getestet. Funktioniert soweit sehr gut. Nur das ich halt das Datum manuell per Dropdown auswählen muß. Aber das ist ja noch akzeptabel.
Ich habe momentan nicht alle Dateien zur Hand , ich werde dann mal versuchen es komplett fertig zu machen.
Sollte ich noch Probleme haben, kann ich mich ja bestimmt nochmal bei Dir melden :-)

Gruß Jürgen


  

Betrifft: AW: Makros in Datei ausführen von: Jürgen
Geschrieben am: 06.01.2010 20:40:47

Hallo Franz , oder andere :-),

habe das Makro jetzt soweit eingebaut,

allerdings bekomme ich dabei den im Anhang beschriebenen
Fehler.

Gruß Jürgen




  

Betrifft: AW: Makros in Datei ausführen von: fcs
Geschrieben am: 07.01.2010 01:42:08

Hallo Jürgen,

du hast vergessen die Hochkommata in die Anweisung mit einzubauen.

Gruß
Franz

    Application.Run "'" & Datei & " '!CreateSchedule"



Beiträge aus den Excel-Beispielen zum Thema "Makros in Datei ausführen"