Code:
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swConfMgr As SldWorks.ConfigurationManager
Dim swConf As SldWorks.Configuration
Dim confNames() As String
Dim firstConfName As String
Dim i As IntegerSub main()
' Verbinde mit der aktuellen SolidWorks-Anwendung
Set swApp = Application.SldWorks
' Hole das aktive Dokument
Set swModel = swApp.ActiveDoc
' Prüfe, ob ein Dokument geöffnet ist
If swModel Is Nothing Then
MsgBox "Kein Dokument geöffnet"
Exit Sub
End If
' Hole den Konfigurations-Manager
Set swConfMgr = swModel.ConfigurationManager
' Hole alle Konfigurationen im Modell
On Error Resume Next
ReDim confNames(0)
i = 0
' Überprüfen und Iterieren durch Konfigurationen
Do
Set swConf = swConfMgr.GetConfigurationByIndex(i)
If Not swConf Is Nothing Then
ReDim Preserve confNames(i)
confNames(i) = swConf.Name
i = i + 1
Else
Exit Do
End If
Loop
On Error GoTo 0
' Prüfe, ob Konfigurationen gefunden wurden
If UBound(confNames) < 0 Then
MsgBox "Keine Konfigurationen im Dokument gefunden."
Exit Sub
End If
' Hole den Namen der ersten Konfiguration
firstConfName = confNames(0)
' Schalte auf die erste Konfiguration um
swModel.ShowConfiguration2 firstConfName
MsgBox "Zur ersten Konfiguration gewechselt: " & firstConfName
End Sub