SolidWorks Workflow Automation — From Macros to Task Scheduler to Full API Pipelines

“SolidWorks automation” covers four distinct things that are often treated as interchangeable. They aren’t. A VBA macro that exports DXF files is automation. So is a Task Scheduler job that runs every night. So is a PDM Dispatch script that triggers on a workflow transition. So is a C# COM add-in with a custom Property Manager Page. Each approach has a specific setup cost, maintenance burden, and capability ceiling. Picking the wrong one for a given workflow creates either an over-engineered solution or one that fails the moment requirements change. This guide maps the decision. ...

17 July 2026 · 9 min · CadShift

Estimating Flat Blank Area for Stamped and Formed Sheet Metal in SolidWorks

Bent sheet metal has a flat pattern. SolidWorks can unfold every edge flange, miter flange, and sketched bend into a precise blank geometry, and the SW-Flat Pattern Area cut-list property captures the result automatically. Formed and stamped parts are a different story. A drawn cup, an embossed panel, a hydroformed bracket, a stamped louver grid — SolidWorks models these as solid bodies or as sheet metal with Form features, but there is no flat pattern feature, no unfolding algorithm, and no built-in blank area property. When a fabricator or a quoting tool asks for the blank size, you have to find it yourself. ...

20 June 2026 · 9 min · CadShift

SolidWorks VBA API Events: Why Your Event Handlers Die When the Macro Stops

You set up a WithEvents handler in a SolidWorks VBA macro. The macro runs, SolidWorks does something (opens a document, rebuilds, saves), and your handler fires correctly. Then you close the macro editor and try to use SolidWorks normally — the handler no longer fires. The macro is gone, and so is your event subscription. This confuses VBA developers who are used to Office automation, where event handlers in a document’s VBA project persist as long as the document is open. SolidWorks works differently. Here’s why, and how to keep handlers alive when you need them. ...

15 June 2026 · 7 min · CadShift

When to Upgrade from a SolidWorks Macro to a Full Add-in

A SolidWorks macro gets you 80 percent of the way there. It can open files, traverse assemblies, read custom properties, save DXF, and close — all without writing a line of C#. The VBA IDE ships inside SolidWorks, the API reference is documented, and a working batch export macro can be running in an afternoon. Then the macro breaks in a way that a one-line fix will not solve. Or someone needs it on fifteen workstations, or the team wants a toolbar button, or the workflow needs to respond to file saves without being manually invoked. That is when engineers discover that “just adding a button” requires a complete architectural shift. Macros and add-ins are not on the same continuum — they differ at the design level, and the capabilities that matter most to production workflows sit entirely on the add-in side of that line. ...

1 June 2026 · 8 min · CadShift

Why SolidWorks Can't Batch Export DXF from Multi-Body Parts — And What Actually Works

The checkbox that lies to you Open a multi-body sheet metal part in SolidWorks and try to export DXF. File → Save As → DXF → Options. The “Export multiple flat patterns to single file” checkbox is greyed out. So is the standard “Flat Pattern” export mode. The dialog offers you geometry, hidden lines, and sketches — everything except what you actually need. This catches shops transitioning from separate-part workflows to multi-body assembly files. The multi-body approach makes sense for welded sheet metal assemblies: fewer files, shared reference sketches between bodies, no insert-part reference chains that break when you rename anything. But the DXF export dialog treats the whole assembly as one thing and can’t figure out which flat pattern to export. ...

21 May 2026 · 7 min · CadShift

How to Get Flat Sheet Area in SolidWorks for Any Solid Body — Not Just Sheet Metal Parts

A fabricator needs to quote material. You hand them a bracket modelled as a solid body — not a sheet metal part, no flat pattern feature, just an extrusion with a uniform thickness. They want the raw stock area: how many square millimetres of plate does this part consume before cutting. SolidWorks Mass Properties gives you volume, surface area, and inertia. But the total surface area of a solid body includes every face — both flat faces, four edges, any chamfers or holes. That number is meaningless for material estimation. What you need is the area of one face, or equivalently, the part’s volume divided by its thickness. ...

20 May 2026 · 8 min · CadShift

Drawing Flag Notes vs BOM Cells in SolidWorks — Workarounds for the Missing Parametric Link

A question on r/SolidWorks last week: can you make flag note ⑤ in a drawing appear automatically in the BOM cell for line item 1? The answers suggested balloons, linked notes, and custom properties — all partially right, none complete. SolidWorks does not have a native mechanism for this. What it has is a custom property workaround that approximates the result, with specific limitations that trip people up. What flag notes are (and are not) A flag note in SolidWorks is a drawing annotation with a bordered symbol — typically a circled number like ①, ②, ③ — stored in a flag note bank. You create them via Insert → Annotations → Note, check Flag Note, and assign a border shape and symbol from the PropertyManager. Once created, a note can be added to the bank with Add to Flag Note Bank, making the symbol reusable across sheets. ...

18 May 2026 · 8 min · CadShift

Live BOM from SolidWorks to Excel — Native Table, Macro, and the Better Middle Path

To export a SolidWorks BOM to Excel, you have three paths — and choosing the wrong one is how you end up maintaining a 200-line macro for two months before admitting it doesn’t quite work. A post on r/SolidWorks showed exactly that: a macro that exported an assembly BOM to Excel with description, material, length, thickness, quantity, and supplier data. It mostly worked. Six comments later, nobody had a better answer than “looks fine to me.” The approach was fine — the architecture was wrong. ...

17 May 2026 · 8 min · CadShift

Cut List Survival Guide — Keeping Weldment Names Through Insert Part, Derived Configurations, and Absorbed Bodies

You have a sheet metal weldment with properly named cut list folders: meaningful names built from profile paths and custom properties, properly rolled up into your BOM. Then someone inserts that part into a parent weldment using Insert > Part, or you create a derived configuration that dissolves the cut list context — and every folder name silently reverts to “Sheet” or “Structural Member 1”. This is not a bug. It is a consequence of how SolidWorks tracks cut list folder identity, and understanding the mechanism tells you exactly which fix to apply in which scenario. ...

9 May 2026 · 8 min · CadShift

Multibody DXF Export in SolidWorks — Per-Body Orientation and Why Mirrored Flat Patterns Fight You

The r/SolidWorks thread that prompted this post had a line that anyone who has automated sheet metal exports will recognise: “I can’t for the life of me get the API to cooperate with DXF orientation on sub-bodies at arbitrary angles. Multibody DXF export wants to maintain the base part axis.” The comments offered advice that did not work, because the root problem is not in the macro — it is in how SolidWorks decides where a flat pattern lives in 3D space, and how ExportToDWG2 carries that decision through to the DXF. ...

28 April 2026 · 10 min · CadShift