You are on page 1of 2

Comprehensive SolidWorks API Development (4 days)

Instructor: Keith Rice

Objective
Students will learn the three fundamentals skills of SolidWorks API programming: 1)
Programming using Visual Basic Applications, 2) Using the API Help, 3) Understanding the
SolidWorks API Object Model. These skills be reinforced via creating several VBA macros from
scratch. The second half of the class will discuss using the API with .NET and demonstrate how
to recreate the VBA macros as addins and stand-alones.

Note: This is not a concrete list. Depending on students needs and learning speed, material will
be added or skipped on the fly.

Pre-class: Students will be expected to complete the first unit of our online course, which
covers VBA programming basics. This would take a complete beginner around 3 hours.

1. Day One
a. VBA programming review
b. SolidWorks API Fundamentals
i. Macro recorder
ii. API Help
iii. SolidWorks API Object Model
iv. Creating a macro from scratch
v. Creating a macro shortcut
vi. Debugging tips
2. Day Two
a. Day 1 Review
b. Writing a complex macro from scratch. We will spend most of the morning writing a
macro from scratch that covers some basic topics in parts, assemblies, and drawings
that are of interest to students. The main purpose is to reinforce the fundamental
concepts of SolidWorks API programming, namely using the SolidWorks API and
navigating the SolidWorks API Object Model.
i. Topics covered will include modifying settings, opening and saving
documents, configurations, custom properties, selection, features, geometry
and topology traversal, components, and drawing creation.
3. Day Three
a. Introduction to Visual Studio and VB.NET
b. Creating a VB.NET stand-alone
c. Recreate the VBA macro from Day 2 as
d. Creating a VB.NET
4. Day Five
a. VSTA macros using VB.NET
b. Key differences between VB.NET and VBA
c. Writing a simple VB.NET macro
d. Introduction to Visual Basic Express Edition / Visual Studio
e. Understanding add-ins
f. Introduction to source control using Git and Sourcetree

You might also like