Hide Table of Contents

Get Weldment Cut-list Feature and Annotations Example (VBA)

This example shows how to get a weldment cut-list feature and weldment cut-list annotations.




' Preconditions: Drawing document is open that has

'                a weldment cut-list table.


' Postconditions: None




Option Explicit


Dim swApp As SldWorks.SldWorks

Dim swModel As SldWorks.ModelDoc2

Dim swDrawingDoc As SldWorks.DrawingDoc

Dim swFeature As SldWorks.Feature

Dim swWeldmentCutListFeat As SldWorks.WeldmentCutListFeature

Dim swWeldmentCutListAnnotation As SldWorks.WeldmentCutListAnnotation

Dim vWeldCutListAnnotations As Variant

Dim vCustProperties As Variant

Dim i As Long

Dim j As Long


Sub main()


Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc


' Traverse FeatureManager design tree

' Get first feature in FeatureManager design tree

Set swFeature = swModel.FirstFeature


' If the type of feature is "WeldmentTableFeat"

' then get the WeldmentCutListFeature object

Do While Not swFeature Is Nothing

    If swFeature.GetTypeName = "WeldmentTableFeat" Then

        Debug.Print swFeature.Name, swFeature.GetTypeName

        Set swWeldmentCutListFeat = swFeature.GetSpecificFeature2

        Debug.Print "   Name of configuration:    " & swWeldmentCutListFeat.Configuration

        Debug.Print "   Keep missing items:       " & swWeldmentCutListFeat.KeepCurrentItemNumbers

        Debug.Print "   Strikeout missing items:  " & swWeldmentCutListFeat.StrikeoutMissingItems

        Debug.Print "   Starting sequence number: " & swWeldmentCutListFeat.SequenceStartNumber


        ' Get the weldment cut-list annotations

        vWeldCutListAnnotations = swWeldmentCutListFeat.GetTableAnnotations

        Debug.Assert Not IsEmpty(vWeldCutListAnnotations)

        For i = LBound(vWeldCutListAnnotations) To UBound(vWeldCutListAnnotations)

            ' Print the number custom properties and then the custom properties

            Debug.Print "   Number of custom properties: " & vWeldCutListAnnotations(i).GetAllCustomPropertiesCount

            vCustProperties = vWeldCutListAnnotations(i).GetAllCustomProperties

            For j = LBound(vCustProperties) To UBound(vCustProperties)

                Debug.Print "        Custom property: " & vCustProperties(j)

            Next j

        Next i

    End If


    ' Get the next feature in the FeatureManager design tree

    Set swFeature = swFeature.GetNextFeature




End Sub

Provide feedback on this topic

SOLIDWORKS welcomes your feedback concerning the presentation, accuracy, and thoroughness of the documentation. Use the form below to send your comments and suggestions about this topic directly to our documentation team. The documentation team cannot answer technical support questions. Click here for information about technical support.

* Required

Subject:   Feedback on Help Topics
Page:   Get Weldment Cut-list Feature and Annotations Example (VBA)
*   I acknowledge I have read and I hereby accept the privacy policy under which my Personal Data will be used by Dassault Systèmes

Print Topic

Select the scope of content to print:


We have detected you are using a browser version older than Internet Explorer 7. For optimized display, we suggest upgrading your browser to Internet Explorer 7 or newer.

 Never show this message again

Web Help Content Version: API Help (English only) 2013 SP05

To disable Web help from within SOLIDWORKS and use local help instead, click Help > Use SOLIDWORKS Web Help.

To report problems encountered with the Web help interface and search, contact your local support representative. To provide feedback on individual help topics, use the “Feedback on this topic” link on the individual topic page.