A propos de l'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.

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.

Elément Description
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)
L'automatisation d'Excel vous permet de réinitialiser automatiquement les variables de macro non définies. Pour réinitialiser les variables de macro non définies, cliquez sur SOLIDWORKS Electrical > Configurations > Projet . Dans la boîte de dialogue Configuration de projet électrique, dans l'onglet Général, sous Automatisation Excel, sélectionnez Réinitialiser la variable de macro non définie. Lorsque vous sélectionnez cette option, la variable %xxx% ne reste pas dans la macro insérée. Elle est remplacée par l'un des éléments suivants :
  • Une chaîne vide
  • Un objet enlevé
  • Un objet par défaut associé comme une fonction ou un emplacement.

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.

Pour créer un nouveau fichier Excel pour l'automatisation, cliquez sur Importer/Exporter > Automatisation Excel > Créer un nouveau fichier Excel pour l'automatisation .

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.

Eléments Description
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.

Tableau 1. Macro
Nom du champ Description Obligatoire
#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 :
Tableau 2. Folios
Nom du champ Description Obligatoire
#fil_filename Nom du fichier sur disque Non
#fil_title Repère du folio. Oui
#fil_filetype Type du folio (*) 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
Tableau 3. Liasses
Nom du champ Description Obligatoire
#bun_tag Repère de la liasse Oui (si une liasse est utilisée)
#bun.tra_0.xx Description de la liasse où xx est le code de langue Non
Tableau 4. Dossiers
Nom du champ Description Obligatoire
#fol_name Repère du dossier Non (si un dossier est utilisé)
#fol.tra_0.xx Description du dossier où xx est le code de langue Non
Tableau 5. Localisations
Nom du champ Description Obligatoire
#loc_text Repère de la localisation Oui (si une localisation est utilisée)
#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
Tableau 6. Fonctions
Nom du champ Description Obligatoire
#fun_text Repère de la fonction Oui (si une fonction est utilisée)
#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

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

  • ttt : doit être remplacé par le préfixe de la table (fil, bun, loc, fun).
  • tra : correspond aux 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, .usually.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

  • ttt : doit être remplacé par le préfixe de la table (fil, bun, loc, fun).
  • use_data : correspond aux 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.
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

Gestion de la section du fil Dans la boîte de dialogue Propriétés des fils de la macro, saisissez la variable %WIRE_STYLE% dans le champ WIRE_STYLE. Dans Excel, vous pouvez ajouter une colonne facultative, %WIRE_STYLE%, et saisir la valeur de la taille du fil.
Connexion automatique des fils Pour utiliser cette option, vous devez sélectionner le paramètre Connexion automatique des macros dans l'onglet Général de la configuration du projet électrique.

Si vous utilisez l'automatisation Excel pour créer des schémas, vous pouvez connecter automatiquement les fils ou les symboles entre le schéma existant et la macro que vous insérez.

Les éléments que vous souhaitez connecter doivent être alignés. Vous pouvez connecter des fils à des symboles ou des fils à des fils.

Gestion des renvois Tenant-Aboutissant Prenons deux macros avec un renvoi Tenant placé dans une macro et un renvoi Aboutissant placé dans l'autre macro. Lorsque vous choisissez d'insérer ces deux macros à l'aide de l'automatisation Excel, vous pouvez établir la connexion entre les renvois Tenant et Aboutissant dans les deux macros.

Dans les macros, insérez les symboles Tenant ou Aboutissant dans lesquels vous saisissez la même variable (par exemple : %Group1%) comme nom de groupe.

Dans le fichier Excel, ajoutez une colonne utilisant cette variable. Dans cette colonne, entrez le nom du groupe. Tous les symboles portant le même nom de groupe seront automatiquement associés.

Remplacement d'un symbole lors de l'insertion d'une macro Prenons un symbole inséré dans une macro. Lorsque vous insérez cette macro à partir de l'automatisation Excel, vous pouvez remplacer ce symbole.

Editez la macro et ouvrez les propriétés du symbole. Entrez la variable, par exemple : %SYMBOL_NAME% dans le champ Variable d'automatisation Excel.

Dans le fichier Excel, ajoutez une colonne utilisant cette variable (%SYMBOL_NAME% dans notre exemple). Dans cette colonne, entrez le nom du symbole que vous souhaitez utiliser.

#mac_name %SYMBOL_NAME%
Test0 TR-EL002
Test0 TR-EL035
Dans cet exemple, vous insérez la macro Test0, une fois avec le symbole TR-EL002 et une deuxième fois avec le symbole TR-EL035, même si un autre symbole a été défini dans la macro Test0.

Installer le complément Excel

Vous pouvez utiliser un complément pour faciliter la création du fichier Excel. Pour l'installer, cliquez sur Importer/Exporter > 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. Cliquez sur Importer/Exporter > 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.

Fichier d'exemple

  1. Pour utiliser cet exemple, créez un nouveau projet électrique.
  2. Téléchargez le catalogue du constructeur, Demo_Simple.part.tewzip, et désarchivez-le sous Gestion des références constructeur.
  3. Téléchargez les macros, Demo_Simple_Macros.macro.tewzip, et désarchivez-les sous 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 Excel.