' Makro: Geo_Set_umbenennen ' Version: 1.4 ' Catia Level: V5R19 ' UIL: English (User Interface Language) ' Autor: Christian Obholzer ' E-Mail: ch.obholzer@aon.at ' Erstellt: 24.02.2010 ' Zweck: Es wird das Geometrische Set "Geometrical Set.1" in Konstruktionsskizzen umbenannt '----------------------------------------------------------------------------------- ' Änderungen: 02.03.2010, Christian Obholzer ' Dokumentenabfrage bezüglich geöffnetes und falsches Dokument hinzugefügt ' 07.04.2010, Christian Obholzer ' UIL (User Interface Language) hinzugefügt ' 30.04.2010, Christian Obholzer ' CATScript in catvba umgeschrieben, Option Explicit für die Überprüfung aller ' Variablendeklarationen und Catia Level hinzugefügt ' 14.09.2010, Christian Obholzer ' Beschreibung der Makroschritte hinzugefügt, Deklarationen geändert '----------------------------------------------------------------------------------- Option Explicit Sub CATMain() '***Deklarationen Dim objWindows As Windows Dim objDoc As Document Dim strTyp As String Dim objSel As Object On Error GoTo Fehler '***Abfrage nach geöffnetem Dokument Set objWindows = CATIA.Windows If objWindows.Count = 0 Then MsgBox "Es ist kein Dokument geöffnet." + vbNewLine + _ "Das Makro kann nicht ausgeführt werden und wird beendet.", vbCritical + vbOKOnly, "Kein Dokument offen" Exit Sub End If '***Auslesen der Dokumentart Set objDoc = CATIA.ActiveDocument strTyp = TypeName(objDoc) If strTyp <> "PartDocument" Then MsgBox "Dieses Dokument ist kein Part." + vbNewLine + _ "Das Makro kann nicht ausgeführt werden und wird beendet.", vbCritical + vbOKOnly, "Falscher Dokumententyp" Exit Sub End If Set objSel = objDoc.Selection '***Vorselektion löschen um das Ergebniss nicht zu verfälschen objSel.Clear '***Performanceerhöhung der Suche CATIA.HSOSynchronized = False '***Geometrischen Set mit dem Namen "Geometrical Set.1" suchen objSel.Search "Part Design.Geometrical Set.Name=Geometrical Set.1, all" CATIA.HSOSynchronized = True If objSel.Count = 1 Then '*** Geometrisches Set umbenennen objSel.Item(1).Value.Name = "Konstruktionsskizzen" MsgBox "Der Geometrische Set wird umbenannt.", vbInformation + vbOKOnly, "Hinweis" ElseIf objSel.Count = 0 Then MsgBox "Der Geometrische Set ist nicht vorhanden.", vbCritical + vbOKOnly, "Fehler" End If objSel.Clear Exit Sub '***Fehlerbehandlung: Ausgabe der Fehlernummer und Fehlerbeschreibung Fehler: MsgBox "Fehlernummer: " & Err.Number & vbNewLine & _ "Fehlerbeschreibung: " & Err.Description, vbCritical + vbOKOnly, "Fehler" End Sub