Доброго времени суток, коллеги. Сегодня хочу написать небольшую статью для более лучшего понимания, что такое макросы и с чем их едят. Попробую объяснить простыми словами, без ссылок на всякие Википедии, так как я это понимаю сам, попробую донести и вам.
И так, давайте разбираться. Что же это такое - макрос? По сути, макрос - это последовательность команд на каком-либо языке программирования, которые запускаются в определенной среде и выполняют ряд запрограммированных действий внутри той программы, в которой запущен макрос. Последнее утверждение не совсем верно, т.к. макрос может взаимодействовать и с другими программами, не только внутри той, в которой был запущен (позднее разберем это на примере). Если сказать ещё более простыми словами, то макрос это средство автоматизации неоднократно повторяющихся задач, то есть то, что помогает вам выполнить ваши повторяющиеся действия в разы быстре, чем если бы вы это делали вручную. Макросы позволяют нам экономить наше время, а время - это ценный ресурс, согласитесь.
Может возникнуть вопрос: в каких же программах доступны эти макросы? Программ очень и очень много, где они доступны. Вот небольшой список из того, что помню: все программы пакета Microsoft office (Word, Excel, Power point, Access, Visio и др.), AutoCad, Corel Draw, SolidWorks, линейка продуктов Adobe и т.д. и т.п.
Давайте попробуем конкретизировать, что же такое VBA-макрос, если мы говорим о программе SolidWorks? Ответом будет следующее:
VBA-макрос - это программа (скорее скрипт или набор инструкций/команд), написанная на языке программирования VBA (Visual Basic for Applications), которая выполняет автоматические операции в SolidWorks. VBA - это язык программирования, который может быть использован для создания макросов в SolidWorks.
Макросы SolidWorks позволяют автоматизировать задачи, такие как создание/изменение чертежей, моделей и других объектов SolidWorks. Они могут быть записаны для выполнения конкретных задач, таких как автоматическое создание отверстий в модели, построение эскизов и т.д.
Для создания VBA-макроса в SolidWorks необходимо знание языка VBA и понимание работы SolidWorks API (Application Programming Interface). С помощью SolidWorks API вы можете получить доступ к различным функциям SolidWorks, таким как объекты модели, чертежи и другие элементы.
SolidWorks предоставляет множество встроенных макросов и примеров VBA-кода, которые можно использовать в качестве отправной точки при создании собственных макросов.
Чуть выше Я говорил про среду, в которой работают макросы. Что же это за среда? Если мы говорим в контексте VBA макросов, то их среда разработки называется VBE (Visual Basic Editor) если перевести на русский язык, то звучать это будет как Редактор Визуал Бейсика. Вот так выглядит его окно в программе SolidWorks:
Рис.1 Окно редактора VBE.
Отсюда сразу становиться понятно на каком языке программирования мы должны писать наши макросы. Тогда откуда взялась буква А в абревиатуре VBA и что она означает, спросит самый внимательный читатель? Дело в том, что это не совсем обычный Визуал Бейсик. Это немного другой язык программирования с немного другим синтаксисом. Абревиатура VBA обозначает Visual Basic for Application, то есть на русском это будет как Визуал Бейсик для Приложений. Он очень похож на Visual Basic и является его потомком, т.к. на данный момент времени Visual Basic считается устаревшим и не поддерживается компанием Microsoft, чего не скажешь о VBA. Так же не стоит его путать с современным языком программирования Visual Basic .NET. Это совсем другой зверь, язык на новой платформе, который является продолжением развития своих предыдущих прародителей.
Более подробно почитать на английском о различии в линейке этих языков можно у Артема Татуревича на сайте.
Макросы для Solidworks сохраняются как отдельные файлы с расширением .swp. Это двоичный формат записи файла, не текстовый. То есть простым текстовым редактором вы его не откроете. Открывать файлы данного формата надо через редактор VBE.