' Makro: Namensueberpruefung ' Version: 1.3 ' Catia Level: V5R19 ' UIL: English (User Interface Language) ' Autor: Christian Obholzer ' E-Mail: ch.obholzer@aon.at ' Erstellt: 11.03.2010 ' Zweck: Es wird der Dokumentenamen mit dem Dateinamen verglichen und gegebenfalls gleichgesetzt '----------------------------------------------------------------------------------- ' Änderungen: 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 objDatei As Product 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 = "DrawingDocument" Then MsgBox "Dieses Dokument ist ein Drawing." + vbNewLine + _ "Das Makro kann nicht ausgeführt werden und wird beendet.", vbCritical + vbOKOnly, "Falscher Dokumententyp" Exit Sub End If Set objDatei = objDoc.Product '***geöffnete Datei ist ein Part If strTyp = "PartDocument" Then If objDatei.partNumber = Left(CATIA.ActiveDocument.Name, Len(CATIA.ActiveDocument.Name) - 8) Then MsgBox "Der Dokumentenname entspricht dem Dateinamen.", vbInformation + vbOKOnly, "Namensüberprüfung" ElseIf Not (objDatei.partNumber) = (Left(CATIA.ActiveDocument.Name, Len(CATIA.ActiveDocument.Name) - 8)) Then MsgBox "Der Dokumentenname entspricht nicht dem Dateinamen und wird deshalb geändert.", vbExclamation + vbOKOnly, "Namensüberprüfung" objDatei.partNumber = Left(CATIA.ActiveDocument.Name, Len(CATIA.ActiveDocument.Name) - 8) End If End If '***geöffnete Datei ist ein Product If strTyp = "ProductDocument" Then If objDatei.partNumber = Left(CATIA.ActiveDocument.Name, Len(CATIA.ActiveDocument.Name) - 11) Then MsgBox "Der Dokumentenname entspricht dem Dateinamen.", vbInformation + vbOKOnly, "Namensüberprüfung" ElseIf Not (objDatei.partNumber) = (Left(CATIA.ActiveDocument.Name, Len(CATIA.ActiveDocument.Name) - 11)) Then MsgBox "Der Dokumentenname entspricht nicht dem Dateinamen und wird deshalb geändert.", vbExclamation + vbOKOnly, "Namensüberprüfung" objDatei.partNumber = Left(CATIA.ActiveDocument.Name, Len(CATIA.ActiveDocument.Name) - 11) End If End If Exit Sub '***Fehlerbehandlung: Ausgabe der Fehlernummer und Fehlerbeschreibung Fehler: MsgBox "Fehlernummer: " & Err.Number & vbNewLine & _ "Fehlerbeschreibung: " & Err.Description, vbCritical + vbOKOnly, "Fehler" End Sub