Ich möchte ein Makro erstellen, das ein Foto von jeder Ansicht der geöffneten Baugruppe speichert, aber wenn ich das Makro speichere, wird durch die Änderung der Ansicht nicht gespeichert, welche Zeile muss eingegeben werden, um dies zu erreichen?
Hallo
Hier ist die Liste der Ansichten:
Dim swApp As Object
Dim Part As Object
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
' Part.ShowNamedView2 "Normal à", 0 'Normal à un plan ou une face sélectionné(e)
Part.ShowNamedView2 "Face", 1
' Part.ShowNamedView2 "Dos", 2
' Part.ShowNamedView2 "Gauche", 3
' Part.ShowNamedView2 "Droite", 4
' Part.ShowNamedView2 "Dessus", 5
' Part.ShowNamedView2 "Dessous", 6
' Part.ShowNamedView2 "Isométrique", 7
' Part.ShowNamedView2 "Trimétrique", 8
' Part.ShowNamedView2 "Dimétrique", 9
' Part.ShowNamedView2 "Vue perso 1", -1
' Part.ShowNamedView2 "Vue perso 2", -1
Part.ViewZoomtofit2 'Ajuste le cadrage de la pièce ou l'assemblage à la vue
End Sub
Bei Standardansichten ist der Name der Ansicht in Anführungszeichen rein indikativ, Sie können ihn durch "" oder "blabla" ersetzen, es funktioniert weiterhin, nur die Zahl definiert die anzuzeigende Ansicht.
Bei benutzerdefinierten Ansichten hingegen ist die Zahl immer -1 und nur der Name in Anführungszeichen (entspricht natürlich dem Namen, den die Ansicht bei der Erstellung erhalten hat) definiert die anzuzeigende Ansicht.
Hallo, hier ist das Makro, das ich erstellt habe, warum funktioniert es nicht?
' ******************************************************************************
' C:\Users\domon\AppData\Local\Temp\swx19096\Macro1.swb - Makro aufgezeichnet am 08.11.22 von domon
' ******************************************************************************
Dimmen swApp als Objekt
Teil als Objekt dimmen
Dim boolstatus als boolescher Wert
Dim longstatus As Long, longwarnings As Long
Sub main()
Legen Sie swApp = Application.SldWorks fest
Set Part = swApp.ActiveDoc
myModelView als Objekt dimmen
Festlegen von myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
' Part.ShowNamedView2 "Gesicht", 1
' Teil.ViewZoomtofit2
' Speichern unter
longstatus = Part.SaveAs3("E:\Desktop\Capture\face.JPG Ansicht", 0, 2)
Ende Sub
makro0004.swp
Hallo
Weil Sie die Zeilen ShowNamedView2 und ViewZoomtoFit2 in den Kommentaren gelassen haben... Die Apostrophe am Zeilenanfang müssen entfernt werden.
PS: Ich habe angefangen, ein erweitertes Makro zu schreiben, um das Massenspeichern von Frame-Bildern für mehrere Dokumente, mehrere Ansichten, parametrisierte Ansichten und mehr zu handhaben. Vorschau:
Schönes Projekt @Sylk, wenn du das im Nachhinein mit uns teilen kannst, wäre ich gespannt, es zu sehen!