Das ist mein Problem. Ich habe ein Makro, mit dem Sie die Zeichnungsblätter nach dem Namen der in dieses Blatt eingefügten Konfiguration umbenennen können. Bis zur Version 2016 funktionierte es sehr gut. Ich habe gerade ein Upgrade auf 2017 SP4.1 durchgeführt und es funktioniert nicht mehr richtig. Es ändert sich nur der Name des 1. Blattes.
Und da ich nichts über VB weiß, bin ich in einem Chaos ...
Der Code läuft wie gewohnt ab, er ändert den Namen des 1. Blattes, geht zu den nächsten Blättern, ändert aber nicht den Namen. Er lässt den Namen bereits präsent.
Nach Tests unter SW2016 funktioniert es bereits nicht sehr gut, weil
Keine Kontrolle des vorherigen Blattnamens, so dass die SW bei gleichem Namen der Konfiguration nicht mehrere Blätter mit demselben Namen umbenennen kann
Theoretisch ist es nicht möglich, aber auf der anderen Seite ist es in Ihrer Zeichnung möglich, dass die Referenzansicht immer die gleiche Konfiguration verwendet
Die Tracks sind wie folgt
SetupSheet5 ist veraltet, also aktualisieren Sie es bereits :)
Nur um sicherzugehen, Sie haben einen Raum mit x Konfigurationen, und die x Konfigurationen haben sie MEP in einer einzigen MEP-Datei mit einer Folio-Konfiguration?
Ich stimme gt22 zu, aber der einfachste Weg wäre, das Makro Schritt für Schritt zu scrollen, um das Verhalten zu sehen, und debug.print hinzuzufügen, um den Inhalt von configname zu überprüfen.
Darüber hinaus wäre es gut gewesen, die Grundkarte zu "zappen", nur die Ansichten zu scannen und die Verarbeitung zu stoppen, sobald ein Wert für die Konfiguration abgerufen wurde.
Ich bestätige auf der anderen Seite, dass es auf 2016 ohne Probleme funktioniert (auch wenn es in Bezug auf den Code nicht sehr sauber ist) und dass Solidworks in jeder Theorie keinen Spaß daran hat, die sogenannten veralteten Funktionen zu entfernen, also wahrscheinliche Fehler an anderer Stelle oder Hardware/Software-Inkompatibilität.
Hola, ich bin verlassen. Ich verstehe überhaupt nicht, wovon Sie sprechen.
Kann jemand dieses Makro so korrigieren, dass es auf SW17 funktioniert?
Hier ist der Inhalt der .swp-Datei
Dim swApp als SldWorks.SldWorks Dim swModel As SldWorks.ModelDoc2 Dim swDraw As SldWorks.DrawingDoc Dim swSheet als SldWorks.Sheet Dim swModelview2 als Konfiguration V-Sheets als Variante dimmen Dim swView As SldWorks.View Teil als Objekt dimmen Dim i As Integer
Sub main()
"Die Vorlage befindet sich im Zeichnungsordner der SW-Vorlage
Legen Sie swApp = Application.SldWorks fest Festlegen von swModel = swApp.ActiveDoc Festlegen von swDraw = swModel Dim ConfigName als Zeichenfolge Dim bRet als boolescher Wert Dim vSheetProps als Variante
vSheets = swDraw.GetSheetNames Für i = 1 TB swDraw.GetSheetCount swDraw.ActivateSheet vSheets(i - 1) Legen Sie swSheet = swDraw.GetCurrentSheet fest
Anzahl = swDraw.GetModelViewCount
Legen Sie swView = swDraw.GetFirstView fest
Do While Not swView ist nichts Konfigurationsname = swView.ReferencedConfiguration Legen Sie swView = swView.GetNextView fest Schleife Set Part = swApp.ActiveDoc boolstatus = Part.SetupSheet5(swSheet.GetName, 12, 12, 2, 3, True, "a3 - iso - NND.slddrt", 0.42, 0.297, "Default", True) swSheet.SetName Konfigurationsname