SolidWorks MakroMania ist eine Beispielsammlung einiger Makros, die Ihnen eine Vorstellung davon geben soll, was man auch schon mit Makros in SolidWorks alles anstellen kann. Der Code des Makros sollte so gut dokumentiert sein, dass Sie damit ohne weitere Anleitung verstehen, was gemacht wird. |
< voriges |
MakroMania Übersicht |
|
Nummer 39 Alle Konfigurationen aktualisieren |
Ich übernehme keine Haftung für die korrekte Funktion der Routinen oder irgendwelcher Schäden bei der Anwendung dieser Beispiele. Das gesamte Risiko trägt der Benutzer selbst. - Sorry, muss sein.
' **********************************************************************
' Makro aktiviert nacheinander alle Konfigurationen und macht optional
' einen Rebuild dafür. Anschließend wird die vorher aktive Konfiguration
' wieder aktiviert.
' Kann hilfreich sein, um bei Problemen beim Speichern alle
' Konfigurationen eines Modells neu durchzurechnen.
'
' ACHTUNG:
' * Datei wird dadurch ggf. größer, vor allem bei vielen Konfs
'
' 26.11.2006 Stefan Berlitz
' Stefan.Berlitz@solidworks.cad.de
' http://solidworks.cad.de
' http://swtools.cad.de
' **********************************************************************
' diese folgenden Werte können editiert werden
'
' RebuildFlag steuert, ob die Konfiguration neu durchgerechnet werden
' 0 = KEIN Rebuild
' 1 = normales Rebuild
' 2 = Fullrebuild
Const RebuildFlag = 1
' Definitions of typenames are consistent as in swconst.bas
Option Explicit
Const swDocPART = 1
Const swDocASSEMBLY = 2
Const swDocDRAWING = 3
Sub Main()
Dim swApp As Object
Dim ModelDoc As Object
Dim ConfigNames As Variant
Dim vConfigName As Variant
Dim swConfig As Object
Dim OldConfig As Object
Dim OldConfigName As String
Set swApp = CreateObject("SldWorks.Application")
Set ModelDoc = swApp.ActiveDoc
If ModelDoc Is Nothing Then
' Call MsgBox("Keine Datei geöffnet", vbOKOnly, "Information")
Exit Sub
End If
'
' alle Dateieigenschaften aus der Konfiguration holen
ConfigNames = ModelDoc.GetConfigurationNames
Set OldConfig = ModelDoc.GetActiveConfiguration
OldConfigName = OldConfig.Name
' alle Konfigurationen durchlaufen
For Each vConfigName In ConfigNames
Call ModelDoc.ShowConfiguration2(vConfigName)
' Rebuild
Select Case RebuildFlag
Case 1
Call ModelDoc.EditRebuild3
Case 2
Call ModelDoc.ForceRebuild3(True)
End Select
Next
' und original Konfig wieder aktivieren
Call ModelDoc.ShowConfiguration2(OldConfigName)
End Sub
Kritik und Anregungen bitte an Stefan Berlitz. Letzte Änderung dieser Seite am Mittwoch, 18. Februar 2009 15:00 |