Automatisation Excel
Cette fonction vous permet de générer automatiquement des folios de schématique à partir des données d'un fichier Excel. Ce fichier doit se présenter dans un format spécifique permettant son importation dans SOLIDWORKS Electrical.
Cette fonction peut s'avérer complexe pour des débutants. L'exemple fourni à la fin de ce chapitre peut être téléchargé pour servir de guide.
Compatibilité
La fonction Automatisation Excel est uniquement compatible avec les éditions 64 bits de Excel 2016 et 365.
Procédure
La fonction Automatisation Excel utilise un fichier XLS formaté contenant des instructions pour créer ou utiliser des liasses, des dossiers et des folios. Ces folios sont générés automatiquement à partir de macros spécifiques dans lesquelles vous utilisez des variables.
1. La première étape consiste à créer les macros voulues.
2. Vous devez ensuite créer le fichier XLS à partir du modèle de fichier.
3. La dernière étape consiste à importer le fichier XLS à l'aide de la fonction Automatisation Excel afin de générer les folios.
Définition de macro
La fonction Automatisation XLS utilise uniquement des macros de schématique. Les autres macros ne sont pas disponibles et ne doivent pas être utilisées. Ces macros sont spécifiques et doivent inclure ces deux règles, point d'insertion et variables.
Point d'insertion
Les macros sont insérées automatiquement dans le folio et doivent avoir un point d'insertion spécifique. A l'aide de la fonction Point d'insertion, cliquez sur le point où vous souhaitez insérer la macro. Vous devrez saisir les coordonnées de ce point dans le fichier XLS.
Définition des variables
La macro contient des variables qui propagent les informations dans le schéma. Ces variables seront remplacées par des textes que vous définirez dans le fichier XLS. Les variables doivent être formatées de telle sorte que le caractère "%" précède et suive la variable. Par exemple %VAR1%, où "VAR1" est le nom de variable. Le texte utilisé dans la variable est libre, mais il peut être identique dans la macro et le fichier XLS.
Vous pouvez utiliser des variables pour remplacer :
- Tous les objets avec un repère (par exemple composants, localisations ou folios) : Pour gérer les repères (localisation, fonction ou composant), éditez la macro à partir de la Gestion des macros et remplacez le repère par la variable. Par exemple, si la macro contient un contacteur, marqué K1, remplacez ce repère par la variable %COMPMARK1%. De la même manière, à l'aide de la Gestion des localisations, vous pouvez remplacer le repère de localisation par une variable telle que %LOCMARK1%, puis affecter cette localisation à un composant.
- Références constructeur : En ce qui concerne la référence constructeur, associez le composant à une référence constructeur dans laquelle vous saisissez des variables dans le nom de constructeur (par exemple : %MANUFACTURER1%) et pour la référence constructeur (par exemple : %MANUFPART1%).
- Numéros d'équipotentielle : Pour utiliser des variables dans les numéros d'équipotentielle, éditez le numéro d'équipotentielles ou de fils et remplacez-le par une variable, par exemple %EQUIP1%.
- Noms de styles de liaison : Pour utiliser des variables dans le nom du style de liaison, ouvrez la Gestion des styles de liaison. Dans les propriétés du style de liaison, remplacez le nom du style de liaison par la variable (par exemple : %WireStyle1%).
- Données traduisibles et données utilisateur : Des variables peuvent également être utilisées pour la description, les données utilisateur ou les données traduisibles de tout objet avec un repère (par exemple : %TransData_1_ES% pour les premières données traduisibles en espagnol)
Définition du fichier Excel
Plusieurs fichiers Excel de modèle sont livrés avec SOLIDWORKS Electrical, ce qui vous aidera à créer vos propres fichiers Excel. Ils sont stockés dans le dossier \XlsAutomation\Template des données SOLIDWORKS Electrical.

|
Menu : Import/Export > Automatisation Excel > Créer un nouveau fichier Excel pour l'automatisation |
1. Sélectionnez dans la liste le fichier de modèle que vous souhaitez utiliser.
2. Enregistrez votre fichier dans votre dossier personnel.
Le fichier Excel peut être de la version 97/2003 (.xls), jusqu'au format 2013 (.xlsx…), ou au format de fichier xlsm (fichier Excel avec des macros). Seule la première feuille visible du fichier sera traitée. Les autres seront ignorées. Aucune restriction n'est applicable au nom de la feuille.
Le fichier Excel doit contenir des instructions spécifiques à utiliser pour réaliser l'Automatisation Excel. Il peut contenir autant de lignes avant l'entête que l'utilisateur le désire. Le processus lit la première ligne dont la première chaîne commence par le caractère #. Il s'agit de la ligne d'entête.
Cette ligne d'entête doit comporter deux types d'informations ; nom de champ (#field) et nom de variable (%variable%).
Vous pouvez gérer plusieurs langues dans l'entête de fichier. Insérez une colonne avec le champ #title_lang pour identifier les textes décrivant les différentes langues.
Noms de champs
Pour identifier un nom de champ, celui-ci doit commencer par le caractère "#". En général, le nom de champ correspond au nom de champ dans la base de données. Par exemple, "#fil_title" correspond au repère du folio dans lequel la macro sera insérée. Certains de ces champs sont requis pour obtenir un résultat cohérent.
Les premiers noms de champ que vous devez gérer correspondent au nom de macro et aux positions.
Macro
NOM DU CHAMP |
DESCRIPTION |
REQUIS |
#mac_name |
Nom de la macro |
Oui |
#mac_posx |
Coordonnée X où la macro sera insérée |
Oui |
#mac_posy |
Coordonnée Y où la macro sera insérée |
Oui |
#mac_insert |
Si cette colonne est présente, non masquée, contient un 0 ou est vide, la macro n'est pas traitée. |
Non |
En ce qui concerne les autres champs de la base de données, SOLIDWORKS Electrical ne prend en charge que les champs des tables de folios ("fil"), liasses ("bun"), localisations ("loc") et fonctions ("fun").
Le seul champ requis est #fil_title, à savoir le titre du folio où la macro sera insérée. Toutefois, si vous insérez un autre champ tel que liasse, localisation ou fonction, la balise de la table correspondante est requise. Par exemple, si vous insérez un champ quelconque de localisation, le champ #loc_text est requis.
Les champs pris en charge sont indiqués dans la table qui suit :
Folios
NOM DU CHAMP |
DESCRIPTION |
REQUIS |
#fil_filename |
Nom du fichier sur disque |
Non |
#fil_title |
Repère du folio. |
Oui |
#fil_filetype |
Type du folio (*) |
Non |
#fil_manual |
Balise manuelle ou automatique |
Non |
#fil.tra_0.xx |
Description du folio, où xx est le code de langue |
Non |
#fil.use_data0 |
Données utilisateur du folio |
Non |
(*) Les valeurs prises en charge pour le type de fichier sont :
0 : Folio de schématique
1 : Folio de synoptique
5 : Page de garde
9 : Folio de mise en armoire
12 : Folio de schéma mixte
Liasses
NOM DU CHAMP |
DESCRIPTION |
REQUIS |
#bun_tag |
Repère de la liasse |
Oui (si une liasse est utilisée) |
#bun_manual |
Balise manuelle ou automatique |
Non |
#bun.tra_0.xx |
Description de la liasse où xx est le code de langue |
Non |
Localisations
NOM DU CHAMP |
DESCRIPTION |
REQUIS |
#loc_text |
Repère de la localisation |
Oui (si une localisation est utilisée) |
#loc_tagmanual |
Balise manuelle ou automatique |
Non |
#loc_tagpath |
Chemin de repère (repère entier) |
Non |
#loc_tagroot |
Racine de repérage |
Non |
#loc.tra_0.xx |
Description de la localisation où xx est le code de langue |
Non |
Fonctions
NOM DU CHAMP |
DESCRIPTION |
REQUIS |
#fun_text |
Repère de la fonction |
Oui (si une fonction est utilisée) |
#fun_tagmanual |
Balise manuelle ou automatique |
Non |
#fun_tagpath |
Chemin de repère (repère entier) |
Non |
#fun_tagroot |
Racine de repérage |
Non |
#fun.tra_0.xx |
Description de la fonction où xx est le code de langue |
Non |
Par défaut, tous les objets créés (folios, liasses, localisations et fonctions) seront créés avec des repères manuels. Pour qu'ils soient numérotés automatiquement, vous devez insérer le champ xxx_tagmanual ou xxx_manual et le définir sur 0. Dans ce cas, le repère du fichier est généré par SOLIDWORKS Electrical conformément à la formule définie dans les paramètres du projet électrique.
Des données utilisateur et des données traduisibles peuvent également être ajoutées en tant que champ, mais elles ne sont pas directement dans la table d'objet, la définition de champ est légèrement différente.
Le formatage est le suivant pour les données traduisibles : #ttt.tra_nn.xx
Où
- ttt doit être remplacé par le préfixe de la table (fil, bun, loc, fun).
- tra est pour les données traduisibles (ne pas modifier).
- nn doit être remplacé par l'index des données nécessaires (0 pour la description). Jusqu'à 14 pour les données traduisibles.
- .xx doit être remplacé par le code de langue, en général .l1 (L1) pour la langue principale du projet électrique. Les codes de langue pris en charge sont :
- Pour les langues du projet électrique (L + 1 à 3) : "l1", "l2", "l3"
- Code de langue standard : en, es, fr, it, ru, ko, ja, pt…, zh, zh-tw
Exemple, pour la description du fichier dans la langue principale du projet électrique : #fil.tra_0.l1
Pour les données utilisateur, la syntaxe est similaire, mais sans spécification de langue : #ttt.use_datann
Où
- ttt doit être remplacé par le préfixe de la table (fil, bun, loc, fun).
- use_data est pour les données utilisateur (ne pas modifier).
- nn doit être remplacé par l'index des données nécessaires, de 0 à 19 pour les données utilisateur.
Exemple, pour les données utilisateur du fichier : #fil.use_data0
Variables
Après avoir spécifié toutes les données, vous devez déclarer où insérer les macros (folio, liasse, localisation et fonction) et spécifier les variables qui seront remplacées par leur valeur. Pour ce faire, deux méthodes sont disponibles.
La première consiste à écrire dans la première colonne disponible de l'entête, la balise "#mac_var_name" et sur la suivante "#mac_var_value", et ensuite, le nombre de paires de colonnes requis. Après quoi, pour chaque ligne (pour chaque macro à insérer), vous voudrez écrire, sur la première colonne, le nom de la variable et, sur la deuxième colonne, la valeur de cette variable. Exemple :
#mac_name |
#mac_var_name |
#mac_var_value |
#mac_var_name |
#mac_var_value |
Test0 |
%motor1% |
M5 |
%motor2% |
M6 |
Dans ce cas, vous insérez la macro Test0, la variable %motor1% est modifiée par M5 et la variable %motor2% est modifiée par M6.
La seconde méthode est préférable si vous utilisez les mêmes noms de variables pour toutes les macros. Ensuite, dans cette méthode, sur l'entête, vous spécifiez le nom de la variable, par exemple %VAR1% et, sur les différentes lignes, la valeur de cette variable pour cette macro insérée. Exemple :
#mac_name |
%var1% |
%var2% |
Test0 |
M5 |
M6 |
Test1 |
V3 |
V4 |
Dans ce cas, la première ligne insère la macro Test0, remplace la variable %var1% par M5 et %var2% par M6 et, sur la deuxième ligne, la macro Test1 est insérée, remplaçant dans ce cas la variable %var1% par V3 et la variable %var2% par V4.
Remarque : Les noms des variables ne sont pas sensibles à la casse.
Utilisation de formule avec les variables
Vous pouvez utiliser une formule pour générer automatiquement la valeur lors de la génération automatique de folio. La formule sera identifiée par deux caractères '{ }', un au début ('{') et l'autre à la fin ('}'). Le contenu entre ces deux caractères sera une formule ressemblant à n'importe quelle formule présente dans le logiciel. Les variables dans la formule doivent être formatées de la même manière que celle dans le fichier Excel (%VARIABLE%).
Par exemple, définissez le repère d'un composant avec cette valeur : {"PP_" + %VARIABLE% + "RR" + %VARIABLE2%}
Lorsque vous insérez la macro deux fois via la génération Excel, le résultat est PP_33RR12 la première fois et PP_33RR13 la seconde.
Si le fichier Excel contient deux lignes avec :
%VARIABLE% défini sur 33 et %VARIABLE2% défini sur 12
%VARIABLE% défini sur 33 et %VARIABLE2% défini sur 13
Installation du complément Excel
Vous pouvez utiliser un complément pour faciliter la création du fichier Excel.

|
Menu : Import/Export > Automatisation Excel > Installer le complément Excel |
Le programme d'installation du complément Excel démarre automatiquement. Si ce n'est pas le cas, sélectionnez le fichier EwExcelAddIn.vsto.
Génération automatique des folios
Après avoir créé le fichier Excel, vous pouvez l'importer dans SOLIDWORKS Electrical afin de générer les folios automatiquement.

|
Menu : Import/Export > Automatisation Excel |
Une boîte de dialogue de sélection de fichier s'ouvre pour vous permettre de sélectionner le fichier Excel.
Les liasses, dossiers et folios sont créés automatiquement, les macros sont insérées dans ces folios et les variables sont remplacées par les valeurs.

|
SOLIDWORKS Electrical ne vérifie pas si les folios existent ou s'ils contiennent d'autres entités électriques. Dans ce cas, les macros sont insérées, quelles que soient les entités existantes du folio. |
Une boîte de dialogue de nomenclature s'ouvre pour afficher le résultat de l'importation.
Exemple de fichier
1. Pour utiliser cet exemple, il est suggéré de créer un nouveau projet électrique.
2. Téléchargez le catalogue du constructeur,
Demo_Simple.part.tewzip et désarchivez-le dans la Gestion des références constructeur.
3. Téléchargez les macros, Demo_Simple_Macros.macro.tewzip
et désarchivez-les dans la Gestion des macros.
4. Ouvrez les macros pour afficher les variables.
5. Téléchargez le fichier
Demo_Simple.xlsx et ouvrez-le pour en afficher la structure.
6. Lancez la commande Automatisation Excel pour importer le fichier XLS.