Hide Table of Contents

Traverse Subfeatures Example (VBA)

This example shows how to traverse the subfeatures of each feature in a part.

' Preconditions: Open a part that has at least one feature.
' Postconditions:
' 1. Gets all of the features and subfeatures.
' 2. Click OK to close each message box.
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swPartDoc As SldWorks.ModelDoc2
Dim swFeature As SldWorks.feature
Dim swSubFeature As SldWorks.feature
Dim featureName As String
Dim subFeatureName As String
Dim message As String
Sub main()
    Set swApp = Application.SldWorks
    Set swPartDoc = swApp.ActiveDoc    
    ' Get the first feature in part
    Set swFeature = swPartDoc.FirstFeature    
    ' While we have a valid feature
    While Not swFeature Is Nothing    
     ' Get the name of the feature
     featureName = swFeature.Name
     message = "Feature: " & featureName & Chr(10) & "  SubFeatures:"
     Set swSubFeature = swFeature.GetFirstSubFeature    
     ' While we have a valid sub-feature
     While Not swSubFeature Is Nothing    
      ' Get the name of the sub-feature
      subFeatureName = swSubFeature.Name
      message = message & Chr(10) & "    " & subFeatureName    
      Set swSubFeature = swSubFeature.GetNextSubFeature
     ' Continue until the last sub-feature is found
     ' Display the sub-features
     swApp.SendMsgToUser message    
     ' Get the next feature
     Set swFeature = swFeature.GetNextFeature()    
    ' Continue until the last feature is found
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:   Traverse SubFeatures 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) 2017 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.