[Макросы SolidWorks] Пакетное сохранение конфигураций модели
При создании 3D-моделей в SolidWorks часто удобно использовать такую вещь как конфигурации. Это разновидности детали или сборки внутри одного файла. Если рассматривать на примере переменного резистора, то конфигурациями удобно делать модели с различными валами:
И если создавать конфигурации в SolidWorks можно при помощи таблиц, то вот сохранение всех конфигураций в раздельные STEP-файлы нужно делать вручную, что крайне неудобно. А если потом заметишь в модели ошибку и недочет, после исправления которого нужно все снова сохранять...
Но в SolidWorks же есть VBA! А значит можно написать макрос, который все это автоматизирует. После некоторого поиска и копания в VBA получился следующий код:
Option Explicit Sub main() Dim swApp As SldWorks.SldWorks Set swApp = Application.SldWorks Dim swModel As SldWorks.ModelDoc2 Set swModel = swApp.ActiveDoc Dim swConfig As SldWorks.Configuration Set swConfig = swModel.GetActiveConfiguration Dim fname, current As String Dim step As Long Dim configs As Variant step = swApp.SetUserPreferenceIntegerValue(swStepAP, 214) 'Сохранять в формат STEP AP214 fname = swModel.GetPathName fname = Mid(fname, 1, InStr(fname, ".") - 1) 'Записать путь к файлу с именем файла без расширения current = swModel.GetActiveConfiguration.name 'Имя текущей конфигурация configs = swModel.GetConfigurationNames 'В переменную записывается весь список конфигураций Dim i As Long For i = 0 To UBound(configs) 'Цикл по всем конфигурациям модели swModel.ShowConfiguration2 (configs(i)) Dim name As String name = fname + configs(i) + ".STEP" 'Путь к файлу для новой конфигурации Call swModel.SaveAs3(name, 0, 0) 'Сохраняем как STEP открытый документ Next i 'К следующей конфигурации MsgBox ("Saved " + CStr(i) + " file(s)!"), vbInformation, "Done" swModel.ShowConfiguration2 (current) 'Возвращаем документ к исходной конфигурации End Sub
Работает все крайне просто, по комментариям, думаю, будет понятно. Также файл макроса прикладываю отдельно. Останется только его запустить.
Простая версия: Скачать
UPD 14/03/17:
Макросу добавлен интерфейс, позволяющий:
1. Выбирать префикс к именам создаваемых файлов и имя подпапки, создаваемой для сохранения:
2. Наблюдать процесс сохранения с отображением процентов и списка созданных файлов:
3. Прерывать выполнение макроса:
11 Comments
Recommended Comments
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.