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

Die Funktion XLS-Automatisierung verwendet ausschließlich Schaltplan-Makros. Die anderen Makros sind nicht verfügbar und dürfen nicht verwendet werden. Es handelt sich um besondere Makros, die zwei Regeln umfassen, nämlich Einfügungspunkte und Variablen.

Element Beschreibung
Einfügungspunkt Die Makros werden automatisch in der Zeichnung eingefügt und müssen über einen bestimmten Einfügungspunkt verfügen. Klicken Sie in der Funktion Einfügungspunkt auf den Punkt, an dem das Makro eingefügt werden soll. Die Koordinaten für diesen Punkt müssen in der XLS-Datei eingegeben werden.
Variablendefinition Das Makro enthält Variablen, mit denen die Informationen im Schaltplan übertragen werden. Diese Variablen werden durch Texte ersetzt, die Sie in der XLS-Datei einrichten. Die Variablen müssen mit dem Zeichen „%“ vor und nach der Variablen formatiert werden. Beispiel: %VAR1%, wobei „VAR1“ der Variablenname ist. Der in den Variablen verwendete Text ist Freiform, im Makro und in der XLS-Datei kann es sich aber um den gleichen Text handeln.

Sie können Folgendes durch Variablen ersetzen:

  • Alle Objekte mit einem Kennzeichen (wie Bauteile, Einbauorte und Zeichnungen): Um die Kennzeichen (Einbauort, Funktion oder Bauteil) zu verwalten, bearbeiten Sie das Makro in der Makro-Verwaltung und ersetzen Sie das Kennzeichen durch die Variable. Wenn das Makro beispielsweise einen Schalter mit dem Kennzeichen K1 enthält, ersetzen Sie dieses Kennzeichen durch die Variable %COMPMARK1%. Auf die gleiche Weise können Sie mithilfe der Einbauortverwaltung das Einbauortkennzeichen durch eine Variable wie %LOCMARK1% ersetzen und diesen Einbauort einem Bauteil zuweisen.
  • Artikel: Was das Hersteller-Teil betrifft, so weisen Sie das Bauteil dem Hersteller-Teil zu, in dem Sie Variablen unter dem Namen des Herstellers (zum Beispiel: %MANUFACTURER1%) und für die Artikelreferenz eingeben (zum Beispiel: %MANUFPART1%).
  • Äquipotenzialnummern: Um Variablen in den Äquipotenzialnummern zu verwenden, bearbeiten Sie die Äquipotenzialnummer des Leiters und ersetzen Sie sie durch eine Variable wie %EQUIP1%.
  • Name des Leiterstils: Wenn Sie im Namen des Leiterstils Variablen verwenden möchten, öffnen Sie die Leiterstilverwaltung. Ersetzen Sie den Namen des Leiterstils in den Eigenschaften des Leiterstils durch eine Variable (zum Beispiel: %WireStyle1%).
  • Übersetzbare Daten und Benutzerdaten: Variablen können auch in der Beschreibung, in den Benutzerdaten oder in den übersetzbaren Daten eines Objekts verwendet werden, das ein Kennzeichen hat (zum Beispiel: %TransData_1_ES% für den ersten übersetzbaren Datenwert auf Spanisch)

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 Makros die Variable %SECTION% für das Feld Querschnitt oder Breite ein. In Excel können Sie eine optionale Spalte %SECTION% 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.