Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<
Microsoft Office 2003-2019 => Excel => Thema gestartet von: Rolf Grob am Dezember 27, 2013, 16:49:22 Nachmittag
Titel: Office 2007: Dynamischer Pfad für Daten Export
Beitrag von: Rolf Grob am Dezember 27, 2013, 16:49:22 Nachmittag
Hallo Zusammen, Ich bin seit längerem an dem Problem dynamischer Dateipfade, nun habe ich eine Lösung erhalten für das laden von Bildern. Leider verstehe ich nicht allzuviel von VBA Codes :-\
Ich möchte gerne aus der Arbeitsmappe Diagramme als jpg Exportieren, und habe es mit der selben Lösung ausprobiert, aber ich erhalte immer Fehlermeldungen, weshalb? Und, kann mir da jemand Weiterhelfen.
Ich habe es so gemacht: ____________________________________________________________
Sub Schliessen() Workbook.Close (ThisWorkbook.Path & "\" & "Buchhaltung RG.xlsm") End Sub __________________________________________________________
Private Sub Workbook_BeforeClose(Cancel As Boolean)
End Sub _________________________________________________________________________________________________
Egal mit oder ohne Klammer beim Pfad, es gibt immer Fehlermeldungen die ich nicht verstehe. >:(
Beim Importieren von den Diagrammen funktioniert es doch !
Es währe sehr nett wenn mir jemand helfen könnte ;D
Lg Rolli
rolf_grob@bluewin.ch
Titel: Antw: Office 2007: Dynamischer Pfad für Daten Export
Beitrag von: maninweb am Dezember 27, 2013, 17:56:48 Nachmittag
Hallo Rolf,
der Code zum Exportieren der Grafik kann auch in der Prozedur zum Schließen abgelegt werden. Somit nicht notwendig, dies im Ereignis Before_Close zu implementieren. Insofern kannst Du für Dein Vorhaben das Ereignis entfernen.
Du hast die Fehlermeldungen erhalten, weil dieser nicht zulässige Variablennamen, fehlerhafte Argumente und eine Mischung aus statischen Texten und Variablen enthalten ist.
So erwartet die Prozedur Close an erster Stelle eine Angabe, ob gespeichert werden soll oder nicht. Diese Angabe ist ein Boolean, der die Werte False oder True einnehmen kann. Ein Text, den Du übergeben hast, geht dann nicht. Falls Du vor hattest, die Mappe unter einem anderen Namen zu speichern, musst Du das zweite Argument verwenden. Tipp: den Cursor auf Close setzen und F1 drücken, in Excel 2010 geht direkt die passende VBA-Hilfeseite auf, die die Argumente erläutert.
Workbook kannst Du zudem nicht als Variablenname verwenden, denn Workbook ist durch Excel als Objekt reserviert. Somit ginge ThisWorkbook.Close oder Workbooks("DeineMappe.xlsm).Close. Variablen sollten deklariert werden (das Dim am Anfang). Das macht es Excel bei der Interpretation etwas leichter.
Beim Argument Filename:= hattest Du einen statischen Text mit einer variablen Angabe vermischt. Für statische Texte kannst Du die Anführungszeichen verwenden; bzw. sobald diese vorhanden sind, ist der Text innerhalb der " statisch, also keine Variable mehr.
Gruß
Titel: Antw: Office 2007: Dynamischer Pfad für Daten Export
Beitrag von: Rolf Grob am Dezember 27, 2013, 19:39:07 Nachmittag
Hallo Mainweb, Zuerst einmal Danke für deine letzte Hilfe sie hat funktioniert.
Leider Exportiert mir mein VBA die Datei nicht wenn ich deinen Code verwende, ABER....
Ich habe herausgefunden dass der Code den ich zuerst hatte eigentlich funktioniert, leider jedoch nicht auf meine Art. Wenn ich den Code,
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Diag As Chart Set Diag = Tabelle2.ChartObjects(1).Chart Diag.Export Filename:=ThisWorkbook.Path & "\" & "Diagramme\Balkendiagramm01.jpg", FilterName:="JPG"
End Sub
verwende, und die Arbeitsmappe NORMAL schliesse, funktioniert es. Wenn ich die Arbeitsmappe aber über einen CommandButton in der Userform schliesse GEHT ES NICHT !!!!!!!
Weshalb das ????????????
Der Code zum Schliessen ist in der UserForm lautet:
Private Sub CommandButton1_Click()
ActiveWorkbook.Save Application.Quit
End Sub
Danke für weitere Hilfe
Rolf
Titel: Antw: Office 2007: Dynamischer Pfad für Daten Export
Beitrag von: mumpel am Dezember 27, 2013, 21:20:08 Nachmittag
Hallo!
Die Userform befindet sich in der zu schließenden Datei? Schließe erst die Userform bevor Du die Datei schließt. Und "Application.Quit" beendet Excel komplett. Die Userform wird mit Unload Me geschlossen/beendet.
Gruß, René
Titel: Antw: Office 2007: Dynamischer Pfad für Daten Export
Beitrag von: Rolf Grob am Dezember 27, 2013, 21:55:55 Nachmittag
Hallo Rene,
Ich möchte die Arbeitsmappe zusammen mit der UserForm schliessen, dass ist Absicht. Jedoch weiss ich nicht wo der Unterschied zwischen dem normalen schliessen der Arbeitsmappe und dem schliessen duch den Befehl in der UserForm liegt.
Weshalb funktioniert der Export beim einen Schliessen, und beim anderen nicht ?
Rolf
Titel: Antw: Office 2007: Dynamischer Pfad für Daten Export
Beitrag von: mumpel am Dezember 27, 2013, 22:06:45 Nachmittag