Автоматизация Excel
Эта функция позволяет автоматически создавать чертежи принципиальных схем на основе данных, содержащихся в файле Excel. Этот файл должен иметь специальный формат для импорта в SOLIDWORKS Electrical.
У новичков могут возникнуть трудности с применением этой функции. Для справки можно скачать пример в конце данный главы.
Совместимость
Функция "Автоматизация Excel" совместима только с версиями Excel 2016 и 365 (64-разрядными).
Процедура
Функция автоматизации Excel использует файл в формате XLS, содержащий инструкции по созданию или использованию книг, папок и чертежей. Эти чертежи автоматически генерируются на основе специальных макросов, в которых используются различные переменные.
1. Сначала создаются макросы, которые будут применяться.
2. Затем на основе шаблона файла создается файл XLS.
3. И наконец, файл XLS импортируется с помощью функции автоматизации Excel для создания чертежей.
Определение макроса
Функция автоматизации XLS использует только макросы принципиальных схем; другие макросы недоступны и не должны применяться. Эти макросы имеют конкретное назначение и должны включать два правила, точку вставки и переменные.
Точка вставки
Макросы автоматически вставляются в чертеж и должны иметь специальную точку вставки. Запустив функцию Точка вставки, нажмите в той точке, где необходимо вставить макрос. Потребуется ввести координаты этой точки в файле XLS.
Определение переменной
Макрос содержит переменные, которые распространяют информацию в схеме. Эти переменные будут заменены текстами, задаваемыми в файле XLS. Переменные должны иметь определенный формат: перед и после переменной должен стоять символ "%". Например, %VAR1%, где "VAR1" — это имя переменной. Текст, используемый в переменной, может быть любым, но он должен быть одинаковым в макросе и файле XLS.
Переменные можно использовать для замены указанных ниже элементов.
- Все объекты с меткой (например, компоненты, местоположения или чертежи): Для настройки меток (местоположения, функции или компонента) отредактируйте макрос в разделе Управление макросами и замените метку переменной. Например, если макрос содержит контактор с меткой K1, замените эту метку переменной %COMPMARK1%. Аналогичным образом в разделе Управление местоположениями можно заменить метку местоположения такой переменной, как %LOCMARK1%, и назначить это местоположение компоненту.
- Детали производителя: Для детали производителя свяжите компонент с деталью, в имя производителя которой вводятся переменные (например: %MANUFACTURER1%), и для ссылки на деталь производителя (например: %MANUFPART1%).
- Номера эквипотенциалей: Чтобы использовать переменные в номерах эквипотенциалей, отредактируйте номер эквипотенциаля провода и замените его переменной, например %EQUIP1%.
- Названия стилей проводов: Чтобы использовать переменные в названии стиля провода, откройте раздел Управление стилями проводов. В окне свойств стиля провода замените название стиля провода на переменную (например: %WireStyle1%).
- Переводимые данные и данные пользователя: Переменные можно также использовать в описании, данных пользователя или переводимых данных любого объекта, который имеет метку (например: %TransData_1_ES% для первых переводимых данных на испанском языке).
Определение файла Excel
Несколько шаблонов в виде файлов Excel предоставляются вместе с SOLIDWORKS Electrical для упрощения создания собственных файлов Excel. Они хранятся в папке \XlsAutomation\Template данных SOLIDWORKS Electrical.

|
Меню: Импорт/Экспорт > Автоматизация Excel > Создать новый файл Excel для автоматизации |
1. Выберите в списке файл шаблона для использования.
2. Сохраните файл в свою личную папку.
Файл Excel может быть в формате от версии 97/2003 (.xls) до версии 2013 (.xlsx) или в формате xlsm (файл Excel с макросами). Только первый видимый лист файла будет обрабатываться, остальные будут проигнорированы. Лист может иметь любое имя без ограничений.
Файл Excel должен содержать специальные инструкции, которые будут использоваться для выполнения автоматизации Excel. В нем может быть столько строк перед заголовком, сколько нужно пользователю. Процесс считывает первую строку, которая начинается с символа #. Это строка заголовка.
В строке заголовка должно быть два вида информации; имя поля (#field) и имя переменной (%variable%).
В заголовке файла можно управлять несколькими языками. Вставьте столбец, используя поле #title_lang для определения текстов, описывающих различные языки.
Имена полей
Чтобы определить имя поля, оно должно начинаться с символа "#". Как правило, имя поля соответствует имени поля в базе данных. Например, "#fil_title" соответствует метке чертежа, в который будет вставлен макрос. Некоторые из этих полей являются обязательными для получения согласованного результата.
Имена первого поля, которые необходимо настроить, соответствуют положениям и имени макроса.
Макрос
ИМЯ ПОЛЯ |
ОПИСАНИЕ |
ОБЯЗАТЕЛЬНОЕ |
#mac_name |
Имя макроса |
Да |
#mac_posx |
Координата X позиции для вставки макроса |
Да |
#mac_posy |
Координата Y позиции для вставки макроса |
Да |
#mac_insert |
Если этот столбец имеется, не скрыт, содержит 0 или пуст, то макрос не будет обработан. |
Нет |
В отношении других полей базы данных SOLIDWORKS Electrical принимает только поля для таблиц чертежей ("fil"), пакетов ("bun"), расположений ("loc") и функций ("fun").
Единственное обязательное поле — это #fil_title, которое является заголовком чертежа, в который вставляется макрос. Однако при вставке любого другого поля, например книги, местоположения или функции, требуется тег соответствующей таблицы. Например, при вставке любого поля местоположения требуется поле #loc_text.
Поддерживаемые поля отображаются в следующей таблице:
Чертежи
ИМЯ ПОЛЯ |
ОПИСАНИЕ |
ОБЯЗАТЕЛЬНОЕ |
#fil_filename |
Имя файла на диске |
Нет |
#fil_title |
Метка чертежа |
Да |
#fil_filetype |
Тип чертежа (*) |
Нет |
#fil_manual |
Ручной или автоматический тег |
Нет |
#fil.tra_0.xx |
Описание чертежа, где xx — это код языка |
Нет |
#fil.use_data0 |
Пользовательские данные чертежа |
Нет |
(*) Поддерживаемые значения для типа файла:
0: Чертеж принципиальной схемы
1: Чертеж структурной схемы
5: Титульный лист
9: Чертеж компоновки шкафа
12: Чертеж смешанной схемы
Книги
ИМЯ ПОЛЯ |
ОПИСАНИЕ |
ОБЯЗАТЕЛЬНОЕ |
#bun_tag |
Метка книги |
Да (если используется книга) |
#bun_manual |
Ручной или автоматический тег |
Нет |
#bun.tra_0.xx |
Описание книги, где xx — это код языка |
Нет |
Местоположения
ИМЯ ПОЛЯ |
ОПИСАНИЕ |
ОБЯЗАТЕЛЬНОЕ |
#loc_text |
Метка местоположения |
Да (если используется местоположение) |
#loc_tagmanual |
Ручной или автоматический тег |
Нет |
#loc_tagpath |
Путь метки (полная метка) |
Нет |
#loc_tagroot |
Корень для метки |
Нет |
#loc.tra_0.xx |
Описание местоположения, где xx — это код языка |
Нет |
Функции
ИМЯ ПОЛЯ |
ОПИСАНИЕ |
ОБЯЗАТЕЛЬНОЕ |
#fun_text |
Метка функции |
Да (если используется любая функция) |
#fun_tagmanual |
Ручной или автоматический тег |
Нет |
#fun_tagpath |
Путь метки (полная метка) |
Нет |
#fun_tagroot |
Корень для метки |
Нет |
#fun.tra_0.xx |
Описание функции, где xx — это код языка |
Нет |
По умолчанию все созданные объекты (чертежи, книги, местоположения и функции) создаются с использованием ручных меток. Чтобы пронумеровать их автоматически, вставьте поле xxx_tagmanual или xxx_manual и задайте для него значение 0. В этом случае метка файла будет создана с помощью SOLIDWORKS Electrical в соответствии с формулой, определенной в настройках электротехнического проекта.
Данные пользователя и переводимые данные можно также добавить в виде поля, но поскольку они не будут находиться непосредственно в таблице объектов, определение поля будет немного отличаться.
Для переводимых данных имеет следующий формат: #ttt.tra_nn.xx
Где
- ttt — это префикс таблицы (fil, bun, loc, fun).
- tra — это переводимые данные (которые нельзя изменять).
- nn — это индекс необходимых данных (0 для описания). Максимальное значение для переводимых данных — 14.
- .xx — заменяется кодом языка, как правило. l1 (L1) для основного языка электротехнического проекта. Поддерживаемые коды языков:
- Из языков электротехнического проекта (L + от 1 до 3): "l1", "l2", "l3"
- Стандартные коды языков: en, es, fr, it, ru, ko, ja, pt..., zh, zh-tw
Например, для описания файла на основном языке электротехнического проекта: #fil.tra_0.l1
Для данных пользователя синтаксис будет аналогичным, но без данных о языке: #ttt.use_datann
Где
- ttt — это префикс таблицы (fil, bun, loc, fun).
- use_data — это данные пользователя (которые нельзя изменять).
- nn — это индекс необходимых данных, от 0 до 19 для данных пользователя.
Например, для данных пользователя файла: #fil.use_data0
Переменные
После указания всех данных необходимо сообщить место для вставки макросов (чертежа, книги, местоположения и функции) и переменные, которое будут замены на значения. Для этого можно воспользоваться одним из двух методов.
Первый метод состоит в том, чтобы последовательно прописать в первом доступном столбце заголовка тег "#mac_var_name", а в следующем — "#mac_var_value", и затем проделать то же самое во стольких парах столбцов, во скольких нужно. После этого для каждой прописываемой строки (каждого вставляемого макроса) в первом столбце необходимо указать имя переменной, а во втором столбце — значение этой переменной. Пример:
#mac_name |
#mac_var_name |
#mac_var_value |
#mac_var_name |
#mac_var_value |
Test0 |
%motor1% |
M5 |
%motor2% |
M6 |
В этом случае вставляется макрос Test0, переменная %motor1% изменяется на M5, и переменная %motor2% изменяется на М6.
Второй метод — лучше, если для всех макросов используются одни и те же имена переменных. Затем при использовании этого метода в заголовке указывается имя переменной, например %VAR1%, и в разных строках — значение, которое имеется у этой переменной для вставленного макроса. Пример:
#mac_name |
%var1% |
%var2% |
Test0 |
M5 |
M6 |
Test1 |
V3 |
V4 |
В этом случае в первой строке вставляется макрос Test0, переменная %var1% изменяется на M5 и переменная %var2% изменяется на M6, а во второй строке вставляется макрос Test1, заменяя в этом случае переменную %var1% на V3 и переменную %var2% на V4.
Замечание: Регистр в именах переменных не учитывается.
Использование формулы с переменными
Для автоматического создания значения во время автоматической генерации чертежа можно использовать формулу. Формула будет определяться с помощью двух символов "{ }", одного "{" в начале и другого "}" в конце. Содержимым между этими двумя символами будет формула, которая может соответствовать любой формуле в программе. Переменные в формуле должны быть отформатированы точно так же, как и в файле Excel (%VARIABLE%).
Например, задайте метку компонента с данным значением: {"PP_" + %VARIABLE% + "RR" + %VARIABLE2%}
Если при создании файла Excel вставить макрос два раза, то в первый раз результат будет PP_33RR12, а во второй раз — PP_33RR13.
Если в файле Excel имеется две строки:
с переменной %VARIABLE% со значением 33 и переменной %VARIABLE2% со значением 12
с переменной %VARIABLE% со значением 33 и переменной %VARIABLE2% со значением 13
Установка дополнения Excel
Для создания файла Excel можно использовать дополнение.

|
Меню: Импорт/экспорт > Автоматизация Excel > Установить дополнение Excel |
Автоматически запускается программа установки дополнения Excel. Если нет, выберите файл EwExcelAddIn.vsto.
Автоматическое создание чертежей
После создания файла Excel можно импортировать его в SOLIDWORKS Electrical для автоматического создания чертежей.

|
Меню: Импорт/Экспорт > Автоматизация Excel |
Открывается диалоговое окно выбора файла, в котором можно выбрать файл Excel.
Книги, папки и чертежи создаются автоматически, макросы вставляются в эти чертежи, а переменные заменяются значениями.

|
SOLIDWORKS Electrical не проверяет, существуют ли эти чертежи или содержат ли они другие электрические объекты. В этом случае макросы вставляются вне зависимости от существующих объектов чертежа. |
Открывается диалоговое окно отчета, и отображаются важные результаты.
Файл примера
1. Чтобы использовать этот пример, рекомендуется создать новый электротехнический проект.
2. Скачайте каталог производителя
Demo_Simple.part.tewzip и разархивируйте его в разделе Управление деталями производителя.
3. Скачайте макросы Demo_Simple_Macros.macro.tewzip
и разархивируйте их в разделе Управление макросами.
4. Откройте макросы, чтобы отобразить переменные.
5. Скачайте файл
Demo_Simple.xlsx и откройте его, чтобы отобразить структуру файла.
6. Запустите команду АВТОМАТИЗАЦИЯ Excel для импорта файла Excel.