custom properties

'-------------------------------------
'
' Preconditions: SolidWorks document is open to which custom properties have been assigned.
'
' Postconditions: None
'-------------------------------------
Option Explicit

Sub main()
    Dim swApp                           As SldWorks.SldWorks
    Dim swModel                         As SldWorks.ModelDoc2
    Dim vConfigNameArr                  As Variant
    Dim vConfigName                     As Variant
    Dim vCustInfoNameArr                As Variant
    Dim vCustInfoName                   As Variant
    Dim bRet                            As Boolean
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
   
    Debug.Print "File = " & swModel.GetPathName
   
    vConfigNameArr = swModel.GetConfigurationNames
   
    ' Is empty if a drawing becasue configurations not supported on drawings
    If IsEmpty(vConfigNameArr) Then
        ReDim vConfigNameArr(0)
        vConfigNameArr(0) = ""
    Else
        ' Add a blank string for the nonconfiguration-specific custom properties
        ReDim Preserve vConfigNameArr(UBound(vConfigNameArr) + 1)
    End If
   
    For Each vConfigName In vConfigNameArr
        Debug.Print "  " & vConfigName
   
        vCustInfoNameArr = swModel.GetCustomInfoNames2(vConfigName)
        If Not IsEmpty(vCustInfoNameArr) Then
            For Each vCustInfoName In vCustInfoNameArr
                Debug.Print "    " & vCustInfoName
                Debug.Print "      Type     = " & swModel.GetCustomInfoType3(vConfigName, vCustInfoName)
                Debug.Print "      Value    = " & swModel.GetCustomInfoValue(vConfigName, vCustInfoName)
                Debug.Print "      Text     = " & swModel.CustomInfo2(vConfigName, vCustInfoName)
            Next
        End If
        Debug.Print "  ---------------------------"
    Next
End Sub

Debug.print Result

File = F:\\BE(J)S\\SwHG20592\\WNRF.SldPrt

  默认

  ---------------------------

 

    材料

      Type     = 30

      Value    = 16MnII

      Text     = "SW-Material@WNRF.SLDPRT"

    质量

      Type     = 30

      Value    = 11.33

      Text     = "SW-Mass@WNRF.SLDPRT"

    名称

      Type     = 30

      Value    =  法兰 WN250-25(B) RF

      Text     =  法兰 WN250-25(B) RF

    标准号

      Type     = 30

      Value    = HG/T20592-2009

      Text     = HG/T20592-2009

  ---------------------------

SolidworksApi macros