Macro Library for SOLIDWORKS Automation

SOLIDWORKS Macros Library
SOLIDWORKS Macros Library

This page contains a library of useful macros, utilities and scripts for SOLIDWORKS engineers. Macros are grouped by categories: part assembly, drawing, performance etc.

Follow the Programming VBA and VSTA macros using SOLIDWORKS API section for guidelines of using and creating macros in SOLIDWORKS.

Best practices for organizing macro library

MyToolbar is a free and open-source add-in for SOLIDWORKS which allows organize the macro library in custom toolbars integrated to SOLIDWORKS environment. Add-in also allows to manage multi-user environment by storing the configuration in the centralized location.

Custom macro buttons in the toolbar
Custom macro buttons in the toolbar

Alternatively macro buttons can be created using native SOLIDWORKS functionality. Read Creating macro buttons in SOLIDWORKS toolbars for more information.

Explore this section to find productivity and automation tools which suit your needs.

For additional productivity add-ins visit the SOLIDWORKS Labs page.


Categories

Import/Export

Automation of importing and exporting SOLIDWORKS files to different formats

Batch Export To Foreign Formats

Console application which exports all files from the specified folder to specified foreign format (e.g. eDrawings, html, stl, jpeg, etc.) using eDrawings API, without the need to have SOLIDWORKS installed or SOLIDWORKS license

Batch Export To Pdf

Console application which exports all files from the specified folder to PDF format using eDrawings API, without the need to have SOLIDWORKS installed or SOLIDWORKS license

Export Sketch To DXF/DWG

VBA macro to export the selected 2D sketch in SOLIDWORKS part or assembly file to the DXF or DWG file

Export Files

Script allows exporting of the SOLIDWORKS file into the foreign format using command line

Export Selected Bodies

VBA macro to export only selected bodies to foreign format (e.g. 3D xml, xaml, amf, 3mf)

Export Sheets To PDF

VBA macro to export all sheets from multi-sheets drawing to individual PDF files

Export Part Or Component To STL

Macro exports selected assembly component or part to stl format without the need of activating the document. Macro can optionally apply transformation to the exported STL to reorient the output

Export Part File To Parasolid

Power Shell script to export part file to parasolid format (.xmp_bin) from command line via Document Manager API (without SOLIDWORKS)

Model

Automation of 3D Models (parts and assemblies) and 2D drawings

Display Callouts With Diameters For All Selected Circular Edges

Macro will display the callouts with the diameter values of all selected circular edges in the 3D model

Run Macro On Document Load

Macro runs VBA code (or another macro) automatically on file load using SOLIDWORKS API

Run Macro On Document Save

Macro runs VBA code (or another macro) automatically on file save using SOLIDWORKS API

Run Macro On New Document Creation

VBA macro to run other macros or code on every new document creation using SOLIDWORKS API

Set Title To Next Part Number

VBA Macro to set title with automatically incremented number from the shared file using SOLIDWORKS API for new files

Configurations And Sheets Reviewer

VBA macro which iterates all sheets and configurations of SOLIDWORKS file and activates each one by one

Delete All Equations

Macro removes all of the equations (or optionally only broken equations) in the active model (part or assembly)

Create Configuration With Average Dimension Values

Macro will create child configuration where all the dimension will be set to average value based on the minimum and maximum values of the tolerance

Find-Replace Text In Dimension Names

Macro replaces the text in the dimension names of the selected feature or features

Suppress Features In New Configurations

Macro create new configurations for all features selected in the feature tree and suppresses them one by one in the respective configuration using SOLIDWORKS API

Delete Feature Folder With All Children Features

Macro allows to delete all of the features in the selected folder in one click using SOLIDWORKS API

Rename All Features Sequentially

Macro renames all the features in the order preserving the base names using SOLIDWORKS API

Show All Comments Text

VBA macro to text from comments in the active document using SOLIDWORKS API

Update XYZ Curve From File

VBA macro which updates coordinates of the free form (through XYZ points) curve from the linked external text file

Automatically Run Macro On Model Load

Macro feature to run VBA code on model loading using SOLIDWORKS API

Automatically Run Macro On Rebuild

Macro allows to automatically run macros on every rebuild using the macro feature and designed binder attachment with SOLIDWORKS API

Select Features By Type

VBA Macro to select all features in the active SOLIDWORKS model (part, assembly or drawing) by specifying its type

Assign New File Name

VBA macro to automatically assign new file name for the document based on the referenced drawing view or custom property using SOLIDWORKS API

Export Table To CSV

Macro exports selected table (BOM, General Table, Revision etc.) into CSV format allowing to export with or without header preserving the special symbols like comma (,) and new line symbol using VBA macro

Write Data From Excel Table Into General Table

Macro will read all the data from the Excel table and import it into the new general table of the active document or update existing table using SOLIDWORKS API

Upgrade Cosmetic Threads

VBA macro upgrades cosmetic threads to a new (SOLIDWORKS 2020) version which allows to improve performance of the document

Export To IFC (2x3 and 4)

Example in VBA to export active part or assembly document to IFC format (2x3 or 4) using SOLIDWORKS API

Frame

Automation of SOLIDWORKS menus, toolbars, 3rd party add-ins, documents management

Load/Unload Add-In

Macro to trigger (load/unload) the specified add-in using SOLIDWORKS API

Save All Documents Silently

VBA macro to save all currently opened modified documents silently (without the popup messages) using SOLIDWORKS API

Close All Documents Except Active

Closes all opened documents except of an active one using SOLIDWORKS API

Run Group Of Macros

Macro demonstrates how to run the group of macros within one macro using SOLIDWORKS API

Developers

Helpful utilities for developers building software utilizing SOLIDWORKS API

Capture SOLIDWORKS Commands

Macro allows capturing SOLIDWORKS and user commands into the list box

Identify Feature Definition And Specific Type

Helper methods allowing to identify the definition and specific type of the selected feature via SOLIDWORKS API and reflection

Performance

Boosting operational performance of SOLIDWORKS documents and application

Notify Long Running Command Completion

VBA macro to handle the long running commands in SOLIDWORKS (open, rebuild, suppress etc.) and beep to notify its completion

Reveal Hidden Features

Macro finds all features which are hidden in the SOLIDWORKS model and either displays or removes them

Suspend Rebuild Operation

This macro allows to suspend rebuild operation for parts, assemblies and drawings to enhance the performance using SOLIDWORKS API

Open Document In Quick View Mode From File Explorer

Tool to open SOLIDWORKS assembly or drawing in quick view (large design review) mode from the context menu in Windows file explorer

Custom Properties

Automation of SOLIDWORKS generic, configuration and cut-list custom properties

Copy File Specific Custom Properties To Configuration Properties

Macro copies all the file specific properties into the properties of the active configuration

Rename Configurations Based On Custom Property

Macro renames all configurations of assembly or part into the value of the specified configuration specific custom property

Sort Custom Properties

VBA macro to sort file and configuration specific custom properties (in ascending and descending order) using logical order via SOLIDWORKS API

Copy Cut-List Custom Properties To Model

VBA macro to copy SOLIDWORKS custom properties from cut-list (sheet metal or weldment) to model or configuration

Link Cut-List Custom Properties To File Custom Properties

Macro feature to link specified custom properties from weldment cut-lists to SOLIDWORKS file custom properties

Manage Properties In Excel

Excel macro which allows very fast way to manage (read and write) SOLIDWORKS custom properties in a batch directly from Excel spreadsheet

Part

Automation of SOLIDWORKS part documents (*.sldprt): geometry, feature tree

Remove All Colors From Part

Macro demonstrates how to remove all colors from the part document on all levels (face, feature, body) using SOLIDWORKS API

Defeature Part

Macro to convert all features in part to dumb solids (defeature part) and surfaces using SOLIDWORKS API

Rename Features Based On Type Names

VBA macro renames (translates) the features in the part feature tree using SOLIDWORKS API

Rename Flat Pattern After Cut-Lists

VBA macro to rename sheet metal flat patterns after the corresponding cut-list feature names

Part Geometry Diff

Diff tool to find the geometrical difference between multi-bodies parts using SOLIDWORKS API

Create Precise Bounding Box

Macro creates a precise bounding box in the part document using SOLIDWORKS API

Assembly

Automation of SOLIDWORKS assembly documents (*.sldasm): components, mates

Advanced Selections

Macro adds additional selection criteria to the advanced selection tool allowing to select components which are excluded from bom, envelope, float etc.

Break All External References For Components

Example will break all external references for all components in the active assembly using SOLIDWORKS API

Copy Component Path

Macro copies the path of the selected component in assembly or drawing into the clipboard using SOLIDWORKS API

Count All Selected Components

Macro counts all unique components selected in the assembly and displays the result in the commands bar

Export Components Positions

This macro exports positions of components to an external CSV text file using SOLIDWORKS API

Move To Folder

Macro move the components selected in the graphics area into a new folder in the feature manager tree

Copy Component Name To Component Reference

VBA macro to copy component name to the component reference using SOLIDWORKS with an ability to filter virtual components only

Open Components In Positions

VBA macro to open each selected component in the assembly in the separate window in the same position they appear in the current assembly view

Components Configurations Permutation

Macro performs a permutation for each components in the root level of the assembly using SOLIDWORKS API and saves the results as individual files

Purge Components Configurations

VBA macro to create copies of all selected components in the assembly and purge configurations in each of them

Replace Components

Macro demonstrates how to replace selected components in the batch preserving original selections using SOLIDWORKS API

Set Components Solving (Rigid or Flexible)

VBA macro to batch set the rigid or flexible option for selected components in the assembly using SOLIDWORKS API

Show Selected Assembly Component In The Window Folder

Example demonstrates how to open the folder of the selected component in the assembly in the Windows File Explorer

Find Where Used

VBA macro to find the assemblies within active assembly which are using the selected component using SOLIDWORKS API

Move Suppressed Mates Into A Folder

VBA macro to move suppressed mates in assembly into feature folder using SOLIDWORKS API

Cut-List

Automation of SOLIDWORKS cut-lists in Sheet Metal and Weldment parts and drawings

Exclude Selected Bodies From Cut-Lists

Macro excludes the solid bodies selected from the graphics area or from the feature tree from weldment or sheet metal cut-list using SOLIDWORKS API

Rename Cut List Features

VBA macro to rename cut list features (sheet metal and weldment) based on custom properties using SOLIDWORKS API

Drawing

Automation of SOLIDWORKS drawing documents (*.slddrw): tables, views, sheets

Update Referenced Configuration From BOM Tables

Macro will update the referenced configurations for all Bill of Materials (BOM) tables on the active drawing document using SOLIDWORKS API

Change Layer For Selected Objects In Drawing

Macro will move all selected objects in the drawing sheet to specified layer using SOLIDWORKS API

Copy File Path Of All Assembly Component Drawings

VBA macro which copies all the referencing drawings paths of the components of the active assembly using SOLIDWORKS API

Copy Drawing View Properties

VBA macro to copy specified custom properties from the selected or default drawing view into the drawing properties

Export Dimensions Information

VBA macro to export dimensions information (name, position, location, zone, value, tolerance) from SOLIDWORKS drawing to the CSV file

Export Flat Patterns

VBA macro to export flat pattern views in the drawing active sheet to DXF or DWG or other format preserving the bend notes, annotations etc. using SOLIDWORKS API

Lock Sheet Format

VBA macro which locks (or password protects) the sheet format editing using SOLIDWORKS API

Rename Flat Pattern Views With Cut-List Names

VBA macro to rename all flat pattern views in the the active sheet after the respective cut-list names using SOLIDWORKS API

Rename Drawing Sheets With Custom Properties Values

Macro will rename all drawings sheets using the value of the specified custom property using SOLIDWORKS API

Scale Views Based On Geometry Size

VBA macro to scale drawing views in the current sheet based on the geometry size and specified map

Increment The Numeric Value In The Note

This macro increments the numeric value of the notes by matching regular expression (e.g. incrementing the revision) using SOLIDWORKS API

Security

Enabling additional security and protection for the models and applications using SOLIDWORKS API

Add Watermark Feature

Adds the watermark feature (license) with custom message and name which cannot be deleted or edited

Materials

Automation of SOLIDWORKS materials database and properties in parts

Copy Custom Property From Material To Model

Macro demonstrates how to copy the specified custom property from the material database to the model custom property using SOLIDWORKS API and XML parsers

Sketch

Automation of SOLIDWORKS sketch, segments and relations

Import Points Cloud From CSV File Into Sketch

Macro imports the points cloud from the specified CSV file into the active 2D or 3D Sketch using SOLIDWORKS API

Export Sketch Coordinates

VBA macro to export coordinates of sketch points from the selected sketch with an ability to convert coordinate to user units and into the model space

Hide All Sketches

Macro will hide (blank) or show (unblank) all sketches (2D and 3D) in the active document using SOLIDWORKS API

Merge Sketches

VBA macro to merge selected sketches into a single 3D sketch using SOLIDWORKS API

Select Equal Arcs

VBA macro to find and select all arcs with diameter equal to the input arc using SOLIDWORKS API

Create Sketch Points On Selected Edge

Macro creates specified number of sketch points on the selected edge in the 3D sketch

Geometry

SOLIDWORKS geometry automation: custom features, topology optimization

Create Selectable Bounding Box

VBA macro which creates 3D bounding box sketch based on the SOLIDWORKS bounding box with an ability to select sketch segments

Split Body By Faces

Macro splits the selected surface or solid body by faces creating individual sheet body for each face using SOLIDWORKS API

Motion Study

Automation of SOLIDWORKS Motion Study module

Animate Configurations

Macro demonstrates how to create an animation from configurations to represents model history or sheet metal folding

Options

SOLIDWORKS document and system option automation

Export All Document Options To Excel

Macro allows to export all document properties into excel format using SOLIDWORKS API and reflection


Product of Xarial Product of Xarial