Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen

Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen | PSD-Tutorials.de

Erstellt von MaschbauMichi, 04.05.2021.

  1. MaschbauMichi

    MaschbauMichi Noch nicht viel geschrieben

    Dabei seit:
    04.05.2021
    Beiträge:
    6
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Hallo zusammen,

    da das Scripting in Photoshop ähnlich verläuft wie im Illustrator, hoffe ich in der Photoshop-Kategorie Unterstützung zu bekommen.

    Ich benötige im Illustrator 150 Rechtecke.
    Jeder dieser Rechtecke hat seinen bestimmten Namen und seine eigenen Maße in Höhe und Breite.

    Diese Werte sind in einer Excel-Datei abgelegt. In Spalte A der Name des Rechtecks, in Spalte B die Breite und in Spalte C die Höhe.
    Von Zeile 1 bis 150.

    Da ich zu faul bin alles mit der Hand zu mache und VBA oder JS im Illustrator ausprobieren will, möchte ich es mit einem Code versuchen.

    Wie ich mit VBA in einem Illustrator-Dokument ein Rechteck anlege weiß ich. Nur weiß ich nicht, wie ich die Werte aus der Excel hole.

    So sollte das Skript ablaufen:
    - Illustrator holt sich Name, Höhe und Breite aus Excel
    - Erstellt ein Rechteck mit Höhe und Breite
    - Bennent das Rechteck nach dem Namen
    - Wiederholt die Schleife 150 mal
    - Fertig

    Hat jemand eine Idee? Danke.
     
    #1      
  2. TutKit

    TutKit Vollzugriff

    Vollzugriff auf sämtliche Inhalte für Photoshop, InDesign, Affinity, 3D, Video & Office

    Suchst du einen effektiven Weg, um deine Geschäftsideen aber auch persönlichen Kenntnisse zu fördern? Teste unsere Lösung mit Vollzugriff auf Tutorials und Vorlagen/Erweiterungen, die dich schneller zum Ziel bringen. Klicke jetzt hier und teste uns kostenlos!

  3. buerzel

    buerzel Versuch macht kluch!

    115
    Dabei seit:
    03.03.2009
    Beiträge:
    11.053
    Geschlecht:
    männlich
    Ort:
    Berlin
    Software:
    Win 10 + Zubehör
    Kameratyp:
    Powershot SX20IS, SX260HS, EOS 700D
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Ai wäre auch noch die falsche Kategorie → https://www.psd-tutorials.de/forum/forums/auftragsangebote.179/

    Du bist doch sicher bereit, für diesen „geringen” Arbeitsaufwand (und v.a. das Know-How) ein kleines Entgelt zu entrichten ... :D
     
    Zuletzt bearbeitet: 04.05.2021
    #2      
  4. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    657
    Software:
    irgendetwas mit CS
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Für Scripting-Anfragen gibt es eine eigene Forenkategorie:
    Programmbezogene Scriptsprachen (psd-tutorials.de)

    Ich fürchte allerdings, dass die VBS/VBA Scripter für Illustrator hier ziemlich rar sein werden. Wahrscheinlich wirst du mit Javascript eher Unterstützung finden.

    Und nicht zuletzt: du benötigst in jedem Fall noch weitere Angaben wie z.B. Position und oder Abstand und auch noch, wie viele Rechtecke hintereinander in einer Linie erstellt werden sollen. Also, wann die "Zeile" an Rechtecken "umbrochen" werden soll.

    Hast du vielleicht ein, zwei Beispiele?
     
    #3      
  5. ph_o_e_n_ix

    ph_o_e_n_ix acromyniker

    Dabei seit:
    08.12.2013
    Beiträge:
    3.047
    Geschlecht:
    männlich
    Software:
    PS/AI CC2o18/19/PS2020/21 | Rhino3D | Win10 Pro
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Nachdem der TE nun noch einen weiteren Thread aufgemacht hat und hier nach wie vor kein Interesse zeigt, hat sich zumindest für mich damit das Thema schon wieder erledigt, noch bevor es richtig begonnen hat.

    Immer wieder lästig, diese Pseudo-Anfragen...
     
    #4      
  6. MaschbauMichi

    MaschbauMichi Noch nicht viel geschrieben

    Dabei seit:
    04.05.2021
    Beiträge:
    6
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Hallo @mm100,

    JavaScript ist auch für mich einfacher, als VBA, aber JS kann nicht auf Ordner zugreifen.
    Ich mache das jetzt so:
    Ich speichere meine Excel als CSV. Hole mir die Daten aus der CSV mit PHP, das mir in einer HTML Text-Area ein 3 dimensionales Array (da 3 Spalten bei mir) für JS erstellt. Diese kopiere ich dann und füge es in meine JS Datei im AI ein. Fertig. Umweg aber naja…
    Ein Zusammenspiel zwischen AI und Excel wäre „Variable data“ ist aber leider nicht das, was ich suche.
    Wenn es doch nur mit VBA eine einfach Methode gäbe Inhalt aus einer Excel-Zelle zu holen.
    Gruß.
     
    #5      
  7. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    657
    Software:
    irgendetwas mit CS
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Könnte bitte ein Moderator dieses Thema nach Programmbezogene Scriptsprachen (psd-tutorials.de) verschieben?


    @MaschbauMichi
    Entweder bist du falsch informiert oder du hast dich nicht gründlich genug informiert oder ich verstehe deine Aussage nicht richtig.
    JS kann auf Ordner und Dateien zugreifen.
    JS kann CSV auslesen und auch Arrays vom Inhalt erstellen.
    Warum willst du das Array in die JS-Datei einfügen? (Auslesen und verwenden reicht doch völlig aus)


    Wenn du uns ein aussagekräftiges Beispiel zeigst, die angefragten Infos nachlieferst (und wir nicht wieder 10 Tage auf Antwort warten müssen) dann können wir dir sicherlich helfen, etwas auf die Beine zu stellen.
     
    #6      
  8. MaschbauMichi

    MaschbauMichi Noch nicht viel geschrieben

    Dabei seit:
    04.05.2021
    Beiträge:
    6
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Hallo mm100,

    Positionierungen oder ähnliches sind erst mal irrelevant. Auch das Erstellen der Rechtecke ist eigentlich irrelevant.

    Mir ist nur wichtig Daten aus einer Excel zu holen und diese im AI zu verwenden.

    Ich übe lediglich an Hand von Rechtecken. Die Excel Daten können auch für Farbcodes oder Texte verwendet werden.

    Mir ist nur wichtig Daten aus einer Excel zu holen und diese im AI zu verwenden. Nur ohne dieses „variable data“.

    Unten sieht man meinen JavaScript Code, das Resultat im AI und die Excel-Datei.

    Ich habe das Array mal auf 5 Zeilen begrenzt. Der Code funktioniert einwandfrei.

    Nur leider muss ich ein Array als „Datenbank“ im JS Code erstellen. Ich habe gehofft es gäbe eine Funktion oder Methode, mit der ich direkt per JavaScript auf die Zellen der Excel-Datei zugreifen kann.

    Ich nutze AI Version 25.x. Freue mich auf Antworten.

    Danke.

    Irgendwie gehen die Bilder nicht einzufügen daher hier die Links:
    https://abload.de/image.php?img=ai1hrkxf.jpg
    https://abload.de/image.php?img=ai26dkow.jpg
    https://abload.de/image.php?img=ai3xnjc2.jpg
    [​IMG] [​IMG] [​IMG]
    [​IMG] [​IMG] [​IMG]
     
    Zuletzt bearbeitet: 14.05.2021 um 17:49 Uhr
    #7      
  9. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    657
    Software:
    irgendetwas mit CS
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Da habe ich jetzt zwar kein Fehlermanagement eingebaut, aber versuchs mal damit:
    Code (Text):
    1. #target Illustrator
    2. // rectangleDraw_dataFromCSV.jsx
    3. // liest eine CSV-Datei aus und erstellt Rechtecke
    4. // mm100  Mai 2021
    5. // https://www.psd-tutorials.de/forum/threads/adobe-illustrator-photoshop-vba-scripting-werte-aus-excel-nutzen.183405/
    6.  
    7. var aDoc = app.activeDocument;
    8. var csvFile = File ("~/Desktop/Beispieldatei.csv"); // ändere den Namen und den Pfad für deine Anforderungen
    9.  
    10. if(csvFile != null) {
    11.     csvFile.open("r");
    12.     var csvStr = csvFile.read();
    13.     csvFile.close();
    14.     csvFile = null;
    15.     } else {
    16.     alert("Kann die CSV-Datei nicht lesen.");
    17. }
    18.  
    19. var rows = csvStr.split('\n');
    20. var rect;
    21.  
    22. for (var i = 1; i<rows.length-1; i++) {
    23.     cols = rows[i].split(';'); // für Semikolon-separierte CSV
    24.     rect = aDoc.pathItems.rectangle(0, 0, cols[1], cols[2]);
    25.     rect.name = cols[0];
    26.     rect.filled = false;
    27. }
     
    #8      
  10. MaschbauMichi

    MaschbauMichi Noch nicht viel geschrieben

    Dabei seit:
    04.05.2021
    Beiträge:
    6
    Adobe Illustrator / Photoshop VBA Scripting Werte aus Excel nutzen
    Danke! Das ist genau das, was ich gesucht habe!
    Datei öffnen, Inhalt in ein Array einlesen, Datei schließen. Der Rest ist dann nur noch Verarbeitung des Arrays.

    Wusste gar nicht, dass JavaScript sowas kann, da es aus Sicherheitsgründen bewusst so gemacht wurde. Hab es aus Neugier im Browser ausprobiert und siehe da, geht nicht. AI ist wohl keine Art von Client, wie ein Browser.

    Danke. Bis zum nächsten Mal.
     
    #9      
Seobility SEO Tool
x
×
×