SOLIDWORKS macro to rename configurations based on custom property

Edit ArticleEdit Article
More 'Goodies'

This macro renames all configurations of assembly or part into the value of the specified configuration specific custom property using SOLIDWORKS API.

Configuration name in the configuration properties manager page
Configuration name in the configuration properties manager page

  • Run the macro and enter the name of the custom property to read the value from
  • Macro will traverse all configurations and rename them based on the corresponding value of the configuration specific custom property
  • If property doesn't exist in configuration or value is empty - configuration is not renamed

Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2

Sub main()

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    If Not swModel Is Nothing Then
        Dim prpName As String
        prpName = InputBox("Specify the property name to read the value from")
        If prpName <> "" Then
            Dim vConfNames As Variant
            Dim i As Integer
            vConfNames = swModel.GetConfigurationNames()
            For i = 0 To UBound(vConfNames)
                Dim swConf As SldWorks.Configuration
                Set swConf = swModel.GetConfigurationByName(vConfNames(i))
                Dim prpVal As String
                If swConf.CustomPropertyManager.Get3(prpName, False, "", prpVal) Then
                    If prpVal <> "" Then
                        swConf.Name = prpVal
                    End If
                End If
        End If
        MsgBox "Please open the model"
    End If
End Sub

Product of Xarial Product of Xarial