![]() |
Grafik per Makro Exportieren - Druckversion +- Juergens-Workshops.de Forum (https://forum.juergens-workshops.de) +-- Forum: Corel Grafik Forum (https://forum.juergens-workshops.de/forumdisplay.php?fid=65) +--- Forum: Corel Draw (https://forum.juergens-workshops.de/forumdisplay.php?fid=93) +--- Thema: Grafik per Makro Exportieren (/showthread.php?tid=38451) Seiten:
1
2
|
Grafik per Makro Exportieren - Chrisbeee - 17.01.2023 Moin Moin liebe Gemeinschaft. Dies ist mein erster Post (Nach meiner Vorstellung) also steinigt mich nicht wenn Informationen fehlen. Ich arbeite mit CD 2017. Könnte mir jemand erklären wie ich Grafiken per Makro / VBA als PDF und JPG exportieren kann? Der Dateiname sollte dabei aus zwei Textfeldern zusammenhängend erstellt werden. Im weiteren Verlauf sollen mehrere nebeneinanderliegende Grafiken der Reihe nach exportiert werden wobei sich der Dateiname nur durch eine angehängte Zahl unterscheidet. Ich hoffe, dass ich mein Anliegen einigermaßen verständlich erklären konnte Vielen Dank Chrisbeee RE: Grafik per Makro Exportieren - koter - 18.01.2023 Hallo Chris, willkommen im Forum! Die Grafiken müssen eine Gemeinsamkeit haben oder benannt sein, damit das Makro sie identifizieren kann: ![]() Im Beispiel sind die Textfelder (Grafiktexte) benannt und die zu exportierenden Grafiken sind Gruppen. Die Gruppen enthalten jeweils zwei Grafiktexte in einer bestimmten Schriftart, daran werden sie identifiziert. ![]() Das Beispielmakro hat keinen Dialog. Den Pfad musst Du also in den Quelltext schreiben. Code: Sub Chrisbeee1() Deine Informationen sind tatsächlich etwas knapp, deshalb konnte ich nur mit diesem allgemeingehaltenen Beispiel antworten. Gesteinigt wurde hier aber noch niemand. (wäre ja mal was neues! ![]() Gruß Koter RE: Grafik per Makro Exportieren - Chrisbeee - 18.01.2023 Vielen Dank Koter aktuell werden die einzelnen Grafiken sowie die jeweiligen Einzelteile per Makro erstellt und positioniert, wobei sich die Grafiken, Texte etc. dann alle auf einer Ebene befinden und nicht gruppiert werden. Dies könnte ich aber auch ändern und die zusammengehörenden Grafiken gruppieren lassen. Wäre es denn alternativ möglich die Grafiken anhand ihrer X-Y-Position auszuwählen und zu exportieren? Also -> Markiere alle Grafiken die sich in dem Bereich von XY(A) bis XY(B) befinden und exportiere diese als JPG --> anschließend wähle alle Grafiken aus dem abweichenden Bereich XY© bis XY(D) und exportiere diese als PDF..... Wenn ich morgen wieder an meinem Rechner im Büro bin würde ich versuchen einen Screenshot zu posten um es besser erklären zu können ![]() Gruß Chris RE: Grafik per Makro Exportieren - koter - 18.01.2023 Hallo Chris, (18.01.2023, 03:14)Chrisbeee schrieb: ...Wäre es denn alternativ möglich die Grafiken anhand ihrer X-Y-Position auszuwählen und zu exportieren?... Ja, aber wenn die Grafiken durch ein Makro erstellt werden, dann baue die Exportfunktionen doch in das Makro ein. Das Makro kennt die Positionen doch, wozu dann ein Zweites, dass die Positionen abermals ermittelt? Gruß Koter RE: Grafik per Makro Exportieren - Chrisbeee - 21.01.2023 Hallo Koter, die "Grafiken / Artikelbilder" bestehen aus mehreren Einzelteilen welche durch das vorhandene Makro nacheinander positioniert werden. Ich weiß z.b., dass eine der Grafiken aus folgenden Elementen besteht -> Code: ActiveDocument.CreateSelection ActivePage.Layers("Flaggen").Shapes(82), ActivePage.Layers("Flaggen").Shapes(81), ActivePage.Layers("Flaggen").Shapes(80), ActivePage.Layers("Flaggen").Shapes(79), ActivePage.Layers("Flaggen").Shapes(78), ActivePage.Layers("Flaggen").Shapes(77), ActivePage.Layers("Flaggen").Shapes(76), ActivePage.Layers("Flaggen").Shapes(75), ActivePage.Layers("Flaggen").Shapes(74), ActivePage.Layers("Flaggen").Shapes(73), ActivePage.Layers("#DFS").Shapes(4) als nächstes müsste eine weitere Grafik -> Code: ActiveDocument.CreateSelection ActivePage.Layers("Flaggen").Shapes(68), ActivePage.Layers("Flaggen").Shapes(67), ActivePage.Layers("Flaggen").Shapes(66), ActivePage.Layers("Flaggen").Shapes(65), ActivePage.Layers("Flaggen").Shapes(64), ActivePage.Layers("Flaggen").Shapes(63), ActivePage.Layers("Flaggen").Shapes(62), ActivePage.Layers("Flaggen").Shapes(61), ActivePage.Layers("Flaggen").Shapes(60), ActivePage.Layers("Flaggen").Shapes(59), ActivePage.Layers("#DFS").Shapes(1) Alternativ könnte ich die einzelnen Bausteine / Shapes vorher in dem Makro gruppieren wobei ja der Ablauf der selbe sein sollte!? PS.: Die PDF und das JPG sollten genaudie Größe der ausgewählten Grafiken haben. Also es soll nur die Auswahl exportiert werden und nicht die ganze Seite. Viele Grüße und ein angenehmes Wochenende Chris RE: Grafik per Makro Exportieren - koter - 21.01.2023 Hallo Chris, dann muss das Makro die erstellte Auswahl nur noch exportieren. Gruppen oder Koordinaten kannst Du also vergessen. Den String für die Dateinamen kannst nach Deinem Muster wie in meinem Beispiel zusammenbauen. Die Exportfunktionen kannst Du auch so verwenden, die Exportieren nur die Auswahl. Gibt es dazu noch Fragen? Gruß Koter RE: Grafik per Makro Exportieren - Chrisbeee - 23.01.2023 Hallo Koter, ich habe deinen Code umgebaut und es folgendermaßen probiert -> Code: Sub Export_Test() Beim Debuggen bekomme ich dann immer den Fehler -> "Laufzeitfehler '438': Objekt unterstützt diese Eigenschaft oder Methode nicht." Im Code ist folgende Zeile markiert-> Code: ActiveSelection.Export Pfad & Dateiname & ".jpg", cdrJPEG, cdrSelection Vielleicht sollte ich noch anmerken, dass meine Fähigkeiten im Bereich Makros / VBA zum größten Teil darauf beruhen, dass ich meine Arbeitsschritte per Makro aufzeichne und diesen Code dann etwas umbaue. Grüße Chris RE: Grafik per Makro Exportieren - koter - 23.01.2023 Guten Morgen Chris, die Methoden „Export“ und „PublishToPDF“ gehören zum Dokument-Objekt. Das Auswahl-Objekt kennt diese nicht, deshalb erscheint die Fehlermeldung. wenn Du sie wie in meinem Beispiel verwendest, sollte es klappen. Die Variablen q, f und s kannst Du aus dem Deklarationsteil und dem Rest des Makros entfernen. Gruß Koter RE: Grafik per Makro Exportieren - Chrisbeee - 26.01.2023 Hallo Koter, zunächst möchte ich mich vielmals bei dir bedanken. Dank deiner Hilfe konnte ich das Makro so erstellen, dass es mir jede Menge Arbeit und Zeit erspart. Zwei Dinge, welche aber nicht zwingend notwendig sind, würde ich gerne noch einbauen.
Code: Dim Ordner As String Grüße Chris RE: Grafik per Makro Exportieren - koter - 26.01.2023 Hallo Chris,
Code: Sub Chrisbeee3() Gruß Koter |