Dim CATIA As Application Set CATIA = GetObject(, "CATIA.Application") ' Attach to running CATIA ' Or start a new session Set CATIA = CreateObject("CATIA.Application") CATIA.Visible = True Application ├─ Documents (Collection) │ ├─ PartDocument (Part) │ │ └─ Part (body, shapes, parameters) │ ├─ ProductDocument (Assembly) │ │ └─ Product (BOM, instances) │ └─ DrawingDocument (2D) └─ Windows, Editors, Selection 4.3 Typical Code Pattern – Get Active Document Dim activeDoc As Document Set activeDoc = CATIA.ActiveDocument If activeDoc Is Nothing Then MsgBox "No document open" Exit Sub End If 5. Practical Automation Examples 5.1 Create a New Part & Add a Pad (Extrude) Sub CreatePartWithPad() Dim partDoc As PartDocument Set partDoc = CATIA.Documents.Add("Part") Dim part1 As Part Set part1 = partDoc.Part

| Element | Syntax Example | |--------|----------------| | Variable | Dim partDoc As Document | | Loop | For i = 1 To 10 ... Next i | | Condition | If Not partDoc Is Nothing Then ... | | Function | Function GetPartName() As String | | Error handling | On Error Resume Next / On Error GoTo ErrHandler |

sketch.CloseEdition

' Your automation logic here ' ...

Exit Sub ErrHandler: MsgBox "Error " & Err.Number & ": " & Err.Description End Sub This guide gives you a solid foundation for . Start by recording simple macros, study the generated code, then progressively build your own automation for part design, drawing generation, assembly constraints, or data extraction.

' Get hybrid body or main shape factory Dim bodies As Bodies Set bodies = part1.Bodies Dim mainBody As Body Set mainBody = bodies.Item("PartBody")