Статьи блога

FromFilenameToProperties - VBA макрос пакетного занесения свойств в детали и/или подсборки

FromFilenameToProperties - VBA макрос пакетного занесения свойств в детали и/или подсборки

    Уважаемые коллеги, представляю на ваш суд расширенную версию макроса для пакетного занесения свойств в файлы сборки. Изначально макрос планировался для заполнения свойств Обозначение и Наименование из имени файла на вкладку конфигурации (данную версию макроса можно найти на страницах форума ), но постепенно "оброс" дополнительным функционалом. Более подробно о всех возможностях макроса расскажу ниже.
   В конце данного сообщения будет ссылка на источник, где вы сможете скачать и установить его для личного использования. Любые замечания по работе макроса и конструктивная критика категорически приветствуется.
 
  1. Установка макроса:
   После того, как вы скачали файл архива FromFilenameToProperties.rar - распакуйте его в удобное для вас место, желательно в папку без ограничения прав доступа к файлам. Структура файлов макроса показана на рисунке ниже:
 
Risunok 01
 Рис.1 Структура файлов макроса.
 
   Текстовые файлы править ручным способом крайне нежелательно, чтобы не нарушить количество строк и тип данных, в этих файлах. Эти файлы нужны для записи и хранения настроек макроса после закрытия программы.
   Теперь запускаем SolidWorks и открываем нужную нам сборку, т.к. макрос будет работать именно с деталями и под-сборками внутри основной (главной) сборки. Чтобы добавить кнопку для запуска макроса надо выполнить ряд простых действий:
    На свободном пространстве панелей SW нажимаем правой кнопкой мыши (ПКМ) и из выпадающего списка выбираем пункт Настройка...
 
Risunok 02

    Рис.2 Открываем окно с настройками.

   У нас откроется вот такое окно настроек и активируется панель вкладок или закладок (кто как называет):

Risunok 03

   Рис.3 Вид на окно настроек и панели вкладок/закладок.
 
   Для макросов я советую выделить отдельную закладку (вкладку). Для этого будем использовать имеющиеся пустые вкладки с правой стороны. Нажимаем ПКМ на вкладке Новая вкладка выбираем пункт Переименовать вкладку, и переименовываем ее в МАКРОСЫ.
   Получаем вот такую пустую вкладку, готовую к наполнению кнопками с полезными макросами:
 
Risunok 04
 
Рис.4 Готовая к наполнению пустая вкладка МАКРОСЫ.
 
   Чтобы создать кнопку с первым макросом нам необходимо в окне с настройками перейти на вкладку Команды (Шаг 1), а затем в списке всех команд найти и выделить строку Макрос (Шаг 2). Из отображаемых справа кнопок, выбираем крайнюю правую кнопку, нажимаем на нее левой кнопкой мыши (ЛКМ) и не отпуская ЛКМ перетаскиваем значок на панель с нашей вкладкой МАКРОСЫ (Шаг 3).
 
Risunok 05
Рис.5 Перетаскиваем/создаем первую кнопку с макросом.
 
   Как только справа от значка появится зеленый знак "+", то отпускаем ЛКМ и у нас появиться вот такое окно с настройками кнопки макроса:
 
Risunok 06
 
Рис.6 Окно с настройками макроса.
 

   Которое мы сейчас и будем заполнять. В области Действие, справа от текстового поля Макрос, нажимаем на кнопку с тремя точками [...]

Risunok 07

Рис.7 Первая настройка. Указываем путь к макросу.

и указываем путь к файлу с макросом. Если макрос не отображается, но вы точно знаете, что он в этой папке есть, то проверьте выпадающий список с расширениями файла макроса, надо выбрать SW VBA Macros (*.swp)

   Нажимаем кнопку Открыть:
 
Risunok 08
 
Рис.8 Путь к файлам макроса. И проверка правильности выбранного расширения.
 
   На втором шаге нам необходимо указать точку входа макроса, если простыми словами, то нам необходимо указать тот метод, который должен выполняться самым первым. Обычно это метод со словом .main на конце, но это не обязательно, зависит от того человека, который писал код. Я встречал методы (точки входа) со словами .start, .run и .first
   В нашем случае это будет FromFilenameToProperties2.main который мы выбираем из выпадающего списка:
 
Risunok 09
 
Рис.9 Самый важный момент в настройке макроса. Выбор точки входа.
 
    НЕ BatchWork.main - не перепутайте - это важно! (По умолчанию прописывается именно он)
  Далее можно выбрать значок для отображения на вкладке и заполнить текстовые поля Подсказка и Спросить (Кого спросить? Ох уж эти переводчики :))
 
Risunok 10
 

Рис.10 Заполняем оставшиеся настройки. 

   Нажимаем кнопку ОК и видим появление нашего выбранного ранее значка на вкладке МАКРОСЫ

Risunok 11

Рис.11 Панель с первым макросом на ней.

   Для быстрого запуска нашего макроса можно назначить т.н. "Горячую клавишу". Для этого в окне Настройка переходим на вкладку Клавиатура и в строке Поиск начинаем набирать название макроса (в нашем случае: fromf), происходит автоматическая сортировка и мы видим только одну строку с таким названием. По значку, понимаем, что это нужный нам макрос. Кликом мышки активируем поле под словом Ярлык(и) и нажимаем нужную нам комбинацию клавиш (в нашем случае: Alt+F) и не забываем нажать на кнопку ОК, чтобы сохранить все выполненные настройки.

Risunok 12

Рис.12 Настройка горячей клавиши для макроса.

  1.  Интерфейс, назначение и работа макроса:
   OknoMacrosa
 
Рис.13 Окно макроса.
 
Текстом писать долго, здесь будет новый видео-обзор, а пока залью видео работы предыдущей версии...
 
  1.  ToDo LIST (Список того, что можно улучшить в дальнейшей разработке):
   Здесь напишу, то, что я планирую изменить в работе и функционале макроса, а так же запишу все ваши замечания, пожелания и просьбы. Можно писать в комментах или в личку.
  Пока что в планах:
  • Сделать отдельную вкладку с настройками макроса
  • Сделать настройку перед добавлением свойств удалять все существующие свойства в текущей конфигурации и/или во всех конфигурациях сразу
  • Сделать поле для ввода свойств, при совпадении которых деталь будет игнорироваться, как у меня сделано для деталей toolbox-a
  • Сделать чек-бокс для свойства Материал, если он активен, то свойство Материал будет всегда браться из материала солида.
  • Что-то еще о чем забыл на данный момент :)
  1. Файлы макроса:
Крайнюю на данный момент времени версия макроса можно скачать на моем бусти (цена вопроса 100 руб.):