Excel-Automatisierung

Diese Funktion ermöglicht Ihnen, automatische Schaltplanzeichnungen aus Daten in einer Excel-Datei zu generieren. Die Datei muss ein bestimmtes Format aufweisen, um in SOLIDWORKS Electrical importiert werden zu können.

Für Anfänger ist diese Funktion möglicherweise zunächst etwas schwierig. Als Hilfestellung können Sie am Ende dieses Kapitels ein Beispiel herunterladen.

Kompatibilität

Die Excel-Automatisierungsfunktion ist nur mit der 64-Bit-Edition von Excel 2016 und 365 kompatibel.

Makrodefinition

Das Feature XLS-Automatisierung verwendet nur schematische Makros. Die anderen Makros sind nicht verfügbar und dürfen nicht verwendet werden. Die Makros sind spezifisch und müssen diese beiden Regeln, den Einfügepunkt und Variablen enthalten.

Element Beschreibung
Einfügepunkt Die Makros werden automatisch in die Zeichnung eingefügt und müssen einen bestimmten Einfügepunkt haben. Klicken Sie im Feature Einfügepunkt auf den Punkt, an dem das Makro eingefügt werden soll. Sie müssen die Koordinaten dieses Punkts in die XLS-Datei eingeben.
Variablendefinition Das Makro enthält Variablen, die Informationen im Schema übertragen. Diese Variablen werden durch Texte ersetzt, die Sie in der XLS-Datei festlegen. Die Variablen müssen mit dem Zeichen „%“ vor und nach der Variablen formatiert werden. Beispiel: %VAR1%, wobei „VAR1“ der Variablenname ist. Der in der Variablen verwendete Text ist frei festlegbar, kann aber im Makro und in der XLS-Datei identisch sein.

Sie können Variablen verwenden, um Folgendes zu ersetzen:

  • Alle Objekte mit einem Kennzeichen (z. B. Komponenten, Einbauorte oder Zeichnungen): Um Kennzeichen (Einbauort, Funktion oder Komponente) zu verwalten, bearbeiten Sie das Makro in der Makroverwaltung und ersetzen Sie das Kennzeichen durch die Variable. Wenn das Makro beispielsweise ein Schütz mit dem Kennzeichen K1 enthält, ersetzen Sie dieses Kennzeichen durch die Variable %COMPMARK1%. Auf die gleiche Weise können Sie mit der Einbauortverwaltung das Einbaukennzeichen durch eine Variable ersetzen, z. B. %LOCMARK1%, und diesen Einbauort einer Komponente zuweisen.
  • Hersteller-Teile: Verknüpfen Sie die Komponente mit einem Hersteller-Teil, in das Sie Variablen für den Herstellernamen eingeben (z. B. %MANUFACTURER1%) und für die Hersteller-Teilenummer (z. B. %MANUFPART1%).
  • Äquipotentialnummern: Um Variablen in Äquipotentialnummern zu verwenden, bearbeiten Sie die Äquipotentialnummer des Leiters und ersetzen Sie sie durch eine Variable, z. B. %EQUIP1%.
  • Name des Leiterstils: Um Variablen im Namen des Leiterstils zu verwenden, öffnen Sie die Leiterstilverwaltung. Ersetzen Sie in den Eigenschaften des Leiterstils den Namen des Leiterstils durch die Variable (z. B. %WireStyle1%).
  • Übersetzbare Daten und Benutzerdaten: Variablen können auch für Beschreibungen, Benutzerdaten oder übersetzbare Daten eines Objekts verwendet werden, das ein Kennzeichen hat (z. B. %Transdata_1_ES% für die ersten übersetzbaren Daten in Spanisch).
Mit der Excel-Automatisierung können Sie nicht definierte Makrovariablen automatisch zurücksetzen. Um nicht definierte Makrovariablen zurückzusetzen, klicken Sie auf SOLIDWORKS Electrical > Konfigurationen > Projekt . Wählen Sie im Dialogfeld Electrical-Projektkonfiguration auf der Registerkarte Allgemein unter Excel-Automatisierung die Option Nicht definierte Makrovariable zurücksetzen aus. Wenn Sie diese Option auswählen, verbleibt die Variable %xxx% nicht im eingefügten Makro. Sie wird ersetzt durch:
  • Eine leere Zeichenfolge
  • Ein entferntes Objekt
  • Ein zugeordnetes Standardobjekt wie eine Funktion oder Position.

Definition der Excel-Datei

In SOLIDWORKS Electrical sind verschiedene Excel-Vorlagendateien enthalten, um Sie beim Erstellen Ihrer eigenen Excel-Dateien zu unterstützen. Sie sind im Ordner \XlsAutomation\Template in den SOLIDWORKS Electrical Daten gespeichert.

Um eine neue Excel-Datei für die Automatisierung zu erstellen, klicken Sie auf Importieren/Exportieren > Excel-Automatisierung > Neue Excel-Datei für Automatisierung erstellen .

Bei der Excel-Datei kann es sich um Version 97/2003 (.xls) bis hin zum 2013-Format (.xlsx) oder zum xlsm-Dateiformat (Excel-Datei mit Makros) handeln. Nur das erste sichtbare Blatt der Datei wird verarbeitet, die anderen Blätter werden ignoriert. Es gibt keine Beschränkung für den Blattnamen.

Die Excel-Datei muss bestimmte Anweisungen für die Excel-Automatisierung enthalten. Sie kann vor der Kopfzeile über beliebig viele Zeilen verfügen. Der Prozess liest die erste Zeile mit dem ersten Zeichen, das mit „#“ anfängt. Das ist die Kopfzeile.

Diese Kopfzeile muss zwei Arten von Informationen aufweisen: den Feldnamen (#field) und den Variablennamen (%variable%).

In der Kopfzeile können mehrere Sprachen verwendet werden. Fügen Sie eine Spalte mit dem Feld #title_lang ein, um die Texte zur Beschreibung der unterschiedlichen Sprachen zu identifizieren.

Elemente Beschreibung
Feldnamen Ein Feld muss mit dem Zeichen „#“ beginnen, damit der Feldname identifiziert wird. Im Allgemeinen entspricht der Feldname dem Feldnamen in der Datenbank. Beispielsweise entspricht „#fil_title“ dem Kennzeichen der Zeichnung, in die das Makro eingefügt werden soll. Einige dieser Feldnamen sind im Interesse konsistenter Ergebnisse erforderlich.

Die ersten Feldnamen, die Sie verwalten müssen, entsprechen dem Makronamen und den Makropositionen.

Tabelle 1. Makro
Feldname Beschreibung Erforderlich
#mac_name Name des Makros Ja
#mac_posx Die Koordinate X, an der das Makro eingefügt wird Ja
#mac_posy Die Koordinate Y, an der das Makro eingefügt wird Ja
#mac_insert Wenn diese Spalte vorhanden und nicht ausgeblendet ist, eine 0 enthält oder leer ist, wird das Makro nicht verarbeitet. Nein

Für die anderen Felder der Datenbank akzeptiert SOLIDWORKS Electrical nur Felder für Zeichnungstabellen („fil“), Bündel („bun“), Einbauorte („loc“) und Funktionen („fun“).

Das einzige erforderliche Feld ist „#fil_title“, der Titel der Zeichnung, in das das Makro eingefügt wird. Wenn Sie aber ein anderes Feld wie Unterlagensatz, Einbauort oder Funktion einfügen, ist die Kennung der entsprechenden Tabelle erforderlich. Wenn Sie beispielsweise ein beliebiges Einbauort-Feld einfügen, ist der „#loc_text“ des Felds erforderlich.

Die unterstützten Felder sind in der folgenden Tabelle aufgeführt:
Tabelle 2. Zeichnungen
Feldname Beschreibung Erforderlich
#fil_filename Name der Datei auf der Festplatte Nein
#fil_title Das Kennzeichen der Zeichnung Ja
#fil_filetype Der Zeichnungstyp (*) Nein
#fil.tra_0.xx Beschreibung der Zeichnung, wobei xx der Sprachcode ist Nein
#fil.use_data0 Benutzerdaten der Zeichnung Nein
(*) Für den Dateityp werden die folgenden Werte unterstützt:
  • 0: Schaltplanzeichnung
  • 1: Verkabelungsübersicht
  • 5: Deckblatt
  • 9: Schaltschranklayout-Zeichnung
  • 12: Zeichnung des gemischten Schaltplans
Tabelle 3. Unterlagensätze
Feldname Beschreibung Erforderlich
#bun_tag Das Kennzeichen des Unterlagensatzes Ja (wenn ein Unterlagensatz verwendet wird)
#bun.tra_0.xx Beschreibung des Unterlagensatzes, wobei xx der Sprachcode ist Nein
Tabelle 4. Ordner
Feldname Beschreibung Erforderlich
#fol_name Kennzeichen des Ordners Nr. (wenn ein Ordner verwendet wird)
#fol.tra_0.xx Beschreibung des Ordners, wobei xx der Sprachcode ist Nein
Tabelle 5. Einbauorte
Feldname Beschreibung Erforderlich
#loc_text Das Kennzeichen des Einbauorts Ja (bei Verwendung eines Einbauorts)
#loc_tagpath Kennungspfad (vollständige Kennung) Nein
#loc_tagroot Stamm des Kennzeichens Nein
#loc.tra_0.xx Beschreibung des Einbauorts, wobei xx der Sprachcode ist Nein
Tabelle 6. Funktionen
Feldname Beschreibung Erforderlich
#fun_text Das Kennzeichen der Funktion Ja (bei Verwendung einer Funktion)
#fun_tagpath Kennungspfad (vollständige Kennung) Nein
#fun_tagroot Stamm des Kennzeichens Nein
#fun.tra_0.xx Beschreibung der Funktion, wobei xx der Sprachcode ist Nein

Benutzerdaten und übersetzbare Daten können ebenfalls als Feld hinzugefügt werden. Da sie sich aber nicht direkt in der Objekttabelle befinden, sieht die Felddefinition etwas anders aus.

Die Formatierung für übersetzbare Daten lautet: #ttt.tra_nn.xx

Dabei gilt Folgendes:
  • ttt: muss durch das Tabellen-Präfix (fil, bun, loc, fun) ersetzt werden.
  • tra: steht für übersetzbare Daten (nicht ändern)
  • nn: muss durch den Index der benötigten Daten ersetzt werden (0 für Beschreibung). Bis zu 14 für übersetzbare Daten.
  • .xx: muss durch den Sprachcode ersetzt werden, in der Regel .l1 (L1) für die Hauptsprache des Electrical-Projekts. Unterstützte Sprachcodes:
    • Aus den Sprachen des Electrical-Projekts (L + 1 bis 3): „l1“, „l2“, „l3“
    • Standardmäßiger Sprachcode: en, es, fr, it, ru, ko, ja, pt..., zh, zh-tw

Beispiel für die Beschreibung der Datei in der Hauptsprache des Electrical-Projekts: #fil.tra_0.l1

Die Syntax für Benutzerdaten ist ähnlich, aber ohne Festlegung der Sprache: #ttt.use_datann

Dabei gilt Folgendes:
  • ttt: muss durch das Tabellenpräfix (fil, bun, loc, fun) ersetzt werden.
  • use_data: steht für Benutzerdaten (nicht ändern).
  • nn: muss durch den Index der benötigten Daten ersetzt werden, von 0 bis 19 für Benutzerdaten.

Beispiel für Dateibenutzerdaten: #fil.use_data0

Variablen Nachdem Sie alle Daten festgelegt haben, müssen Sie angeben, wo die Makros eingefügt werden sollen (Zeichnung, Unterlagensatz, Einbauort und Funktion). Außerdem müssen Sie angeben, welche Variablen durch ihre Werte ersetzt werden sollen. Dazu gibt es zwei Methoden.

Die erste Methode besteht darin, in die erste verfügbare Spalte der Kopfzeile die Kennung „#mac_var_name“ zu schreiben und in die nächste die Kennung „#mac_var_value“, und anschließend so viele Spaltenpaare wie notwendig. Danach schreiben Sie für jede Zeile (für jedes Makro, das eingefügt werden soll) den Namen der Variablen in die erste Spalte und den Wert dieser Variablen in die zweite. Beispiel:

#mac_name #mac_var_name #mac_var_value #mac_var_name #mac_var_value
Test0 %motor1% M5 %motor2% M6
In diesem Fall fügen Sie das Makro Test0 ein, die Variable %motor1% wird durch M5 ersetzt und die Variable %motor2% wird durch M6 ersetzt.

Die zweite Methode ist besser, wenn Sie dieselben Variablennamen für alle Makros verwenden. Geben Sie dann für diese Methode in der Kopfzeile den Namen der Variable an, zum Beispiel „%VAR1%“, und in den verschiedenen Zeilen den Wert, den diese Variable für das eingefügte Makro einnimmt. Beispiel:

#mac_name %var1% %var2%
Test0 M5 M6
Test1 V3 V4
In diesem Fall fügt die erste Zeile das Makro Test0 ein, die Variable %var1% wird durch M5 ersetzt und %var2% durch M6 und in der zweiten Zeile wird das Makro Test1 eingefügt, das in diesem Fall die Variable %var1% durch V3 und die Variable %var2% durch V4 ersetzt.
Bei den Namen der Variablen muss nicht zwischen Groß- und Kleinschreibung unterschieden werden.
Einsatz von Formeln mit Variablen Sie können eine Formel verwenden, um den Wert während der automatischen Generierung der Zeichnung automatisch zu erstellen. Die Formel wird durch zwei Zeichen „{ }“ identifiziert, eines am Anfang „{“ und eines am Ende „}“. Der Inhalt zwischen diesen beiden Zeichen ist eine Formel, genau wie jede andere Formel in der Software. Die Variablen in der Formel müssen auf die gleiche Weise formatiert sein wie die in der Excel-Datei (%VARIABLE%).

Legen Sie das Kennzeichen eines Bauteils mit diesem Wert fest: {"PP_" + %VARIABLE% + "RR" + %VARIABLE2%}

Wenn Sie das Makro zweimal einfügen, ist das Ergebnis der Excel-Generierung beim ersten Mal PP_33RR12 und beim zweiten Mal PP_33RR13.

In der Excel-Datei werden zwei Zeilen wie folgt angezeigt:

%VARIABLE% auf 33 festgelegt und %VARIABLE2% auf 12 festgelegt

%VARIABLE% auf 33 festgelegt und %VARIABLE2% auf 13 festgelegt

Leiterquerschnitt verwalten Geben Sie im Dialogfeld Leitereigenschaften des Makro die Variable %WIRE_STYLE% für das Feld LEITERSTIL ein. In Excel können Sie eine optionale Spalte %WIRE_STYLE% hinzufügen und den Wert der Leitergröße eingeben.
Drähte automatisch verbinden Um diese Option zu verwenden, müssen Sie in der Electrical-Projektkonfiguration den Parameter Makros automatisch verbinden auf der Registerkarte Allgemein auswählen.

Wenn Sie die Excel-Automatisierung zum Erstellen von Schaltbildern verwenden, können Sie die Drähte oder Symbole automatisch zwischen dem vorhandenen Schaltbild und dem Makro verbinden, das Sie einfügen.

Die Elemente, die Sie verbinden möchten, müssen ausgerichtet sein. Sie können Drähte mit Symbolen oder Drähte mit Drähten verbinden.

Ursprungs-Ziel-Pfeile verwalten Stellen Sie sich zwei Makros mit einem Ursprungspfeil in einem Makro und einem Zielpfeil in dem anderen Makro vor. Wenn Sie diese beiden Makros mithilfe der Excel-Automatisierung einfügen möchten, können Sie die Verbindung zwischen Ursprungs- und Zielpfeilen in den beiden Makros herstellen.

Fügen Sie in den Makros Ursprungs- oder Zielsymbole ein, in die Sie die gleiche Variable eingeben (z. B.: %Group1%) als Gruppenname.

Fügen Sie in der Excel-Datei eine Spalte mithilfe dieser Variablen hinzu. Geben Sie in dieser Spalte den Gruppennamen ein. Alle Symbole mit demselben Gruppennamen werden automatisch zugeordnet.

Symbol beim Einfügen eines Makros ersetzen Stellen Sie sich ein in ein Makro eingefügtes Symbol vor. Wenn Sie das Makro aus der Excel-Automatisierung einfügen, können Sie das Symbol ersetzen.

Bearbeiten Sie das Makro und öffnen Sie die Eigenschaften des Symbols. Geben Sie die Variable ein, z. B.: %SYMBOL_NAME% in das Feld Excel-Automatisierungsvariable.

Fügen Sie in der Excel-Datei eine Spalte mit dieser Variablen hinzu (%SYMBOL_NAME% in unserem Beispiel). Geben Sie in dieser Spalte den Namen des Symbols ein, das Sie verwenden möchten.

#mac_name %SYMBOL_NAME%
Test0 TR-EL002
Test0 TR-EL035
In diesem Beispiel fügen Sie das Makro Test0 ein Mal mit dem Symbol TR-EL002 und ein zweites Mal mit dem Symbol TR-EL035ein, unabhängig davon, ob im Test0-Makro ein anderes Symbol definiert wurde.

Excel-Add-In installieren

Um Ihnen beim Erstellen der Excel-Datei zu helfen, können Sie ein Add-In verwenden. Klicken Sie für die Installation auf Importieren/Exportieren > Excel-Zusatzanwendung installieren .

Das Installationsprogramm des Excel-Add-Ins startet automatisch. Wenn nicht, wählen Sie die Datei EwExcelAddIn.vsto aus.

Automatische Generierung von Zeichnungen

Nach dem Erstellen der Excel-Datei können Sie sie in SOLIDWORKS Electrical importieren, damit die Zeichnungen automatisch generiert werden. Klicken Sie auf Importieren/Exportieren > Excel-Automatisierung .

Ein Auswahl-Dialogfeld wird angezeigt, in der Sie die Excel-Datei auswählen können. Die Unterlagensätze, Ordner und Zeichnungen werden automatisch erstellt, die Makros werden in diese Zeichnungen eingefügt und die Variablen werden durch die Werte ersetzt.

SOLIDWORKS Electrical überprüft nicht, ob die Zeichnungen vorhanden sind und ob sie andere elektrische Elemente enthalten. In diesem Fall werden die Makros ungeachtet der vorhandenen Elemente in der Zeichnung eingefügt.

Es wird ein Dialogfeld mit dem Importergebnis geöffnet.

Beispieldatei

  1. Um dieses Beispiel zu verwenden, müssen Sie ein neues Electrical-Projekt erstellen.
  2. Laden Sie den Herstellerkatalog Demo_Simple.part.tewzip herunter und heben Sie die Archivierung in der Artikelverwaltung auf.
  3. Laden Sie die Makros Demo_Simple_Macros.macro.tewzip herunter und heben Sie die Archivierung in der Makro-Verwaltung auf.
  4. Öffnen Sie die Makros, um die Variablen anzuzeigen.
  5. Laden Sie die Datei Demo_Simple.xlsx herunter und öffnen Sie sie, um die Dateistruktur anzuzeigen.
  6. Starten Sie den Befehl Excel-Automatisierung, um die Excel-Datei zu importieren.