Sub CATMain() If CATIA.Documents.Count = 0 Then Box = MsgBox("Es wurde kein aktives Dokument identifiziert" + Chr(10) + "Bitte oeffnen Sie zuerst ein Dokument und starten Sie dann das Makro erneut", vbInformation, "Hinweis") Exit Sub End If For i = 1 To CATIA.Documents.Count Dim oDocument As Document If CATIA.Documents.Count = 0 Then Exit Sub End If Set oDocument = CATIA.ActiveDocument If TypeName(oDocument) = "PartDocument" Then PartDoc If ErrorReturn = 1 Then Exit Sub End If Set oDocument = CATIA.ActiveDocument oDocument.Close End If If CATIA.Documents.Count = 0 Then Exit Sub End If Set oDocument = CATIA.ActiveDocument If TypeName(oDocument) = "ProductDocument" Then ProductDoc If ErrorReturn = 1 Then Exit Sub End If Set oDocument = CATIA.ActiveDocument oDocument.Close End If If CATIA.Documents.Count = 0 Then Exit Sub End If Set oDocument = CATIA.ActiveDocument If TypeName(oDocument) = "DrawingDocument" Then '__________________Ansicht bestimmen_________________________________ Dim drawingDocument1 As Document Set drawingDocument1 = CATIA.ActiveDocument Dim drawingSheets1 As DrawingSheets Set drawingSheets1 = drawingDocument1.Sheets Dim drawingSheet1 As DrawingSheet Set drawingSheet1 = drawingSheets1.ActiveSheet Dim drawingViews1 As DrawingViews Set drawingViews1 = drawingSheet1.Views Dim drawingView1 As DrawingView Set drawingView1 = drawingViews1.ActiveView drawingView1.Activate Set drawingViews1 = drawingSheet1.Views 'Set drawingView1 = drawingViews1.Item(3) Set drawingView1 = drawingViews1.Item("Vorderansicht")'Item(1) drawingView1.Activate '_______________________________________________________________ '__________________________Dateipad LESEN___________________________________________ On Error Resume Next Dateipfad = drawingView1.GenerativeBehavior.document.ReferenceProduct.Parent.Path 'FullName = drawingView1.GenerativeBehavior.document.ReferenceProduct.Parent.Fullname Name = drawingView1.GenerativeBehavior.document.ReferenceProduct.Parent.name '________________________________________________________________________________________ '__________________________________Datei endung Part Leoschen____________________________ LoeschEndung = Left(Name, InStrRev(Name, ".CAT") - 1) 'LoeschEndung = Left(Name, InStrRev(Name, ".") - 1) 'LoeschEndung = Left( Name, Len( Name) -7 ) 'Right '__________________________________________________________________________________________ '__________________________Test________________________________________________________________ 'Dim Box, Speicher As Long 'MsgBox "Dateipfad:" & Chr (13) & Chr (10) & Dateipfad & "\" & LoeschEndung & ".CATDrawing" ,64, "GESPEICHERT" '_________________________________________________________________________________________________________________ CATIA.DisplayFileAlerts = False Datei = Dateipfad & "\" & LoeschEndung & ".CATDrawing" CATIA.ActiveDocument.SaveAS Datei CATIA.ActiveDocument.Close if Err Then Box = MsgBox(" !! Es ist ein Fehler aufgetreten !! " + Chr(10) + Chr(10)+ "Die Zeichnung hatte keine Externen Referenzen z.B. zu einem Part oder Product die Zeichnung wurde >nicht< gespeichert und geschlossen" + Chr(10) + "das Macro wird abgebrochen" + Chr(10) + Chr(10) + "moeglicher Fehler:" + Chr(10) + "Das Teil wurde noch nicht Gespeichert" + Chr(10) + "Speichern Sie das Part o. Product und starten Sie das Makro erneut", vbCritical, "Abbruch") Exit Sub end if End If Next end Sub