'Diesen Code in ein Dokumentprojekt>ThisDocument kopieren. 'Das Dokument speichern und als Template verwenden. Private WithEvents oAppEvents As ApplicationEvents 'referenziert den OnSaveDocument Event Public Sub autoopen1() Dim oApp As Inventor.Application Set oApp = ThisApplication Set oAppEvents = oApp.ApplicationEvents End Sub Private Sub oAppEvents_OnSaveDocument(ByVal DocumentObject As Document, ByVal BeforeOrAfter As EventTimingEnum, ByVal Context As NameValueMap, HandlingCode As HandlingCodeEnum) Dim oApp As Inventor.Application Set oApp = ThisApplication Dim oVBDefault As String oVBDefault = oApp.FileOptions.DefaultVBAProjectFileFullFilename Dim j As Long j = 0 For X = 1 To Len(oVBDefault) If InStr(j + 1, oVBDefault, "\") Then j = InStr(j + 1, oVBDefault, "\") Else Exit For End If Next X 'Pfad für DefaultVBAProjekt oVBDefault = Left(oVBDefault, j) ' Hier Dein externes Projekt angeben ThisApplication.VBAProjects.Open (oVBDefault & "OnSaveDocumentEvent_do.ivb") Dim oPro As InventorVBAProject ' Das eingefügte Projekt ist immer auf der letzten Stelle in der Collection Set oPro = ThisApplication.VBAProjects(ThisApplication.VBAProjects.Count) Dim oCom As InventorVBAComponent ' Das erste Modul aus dem externen Projekt Set oCom = oPro.InventorVBAComponents.Item(1) Dim oMem1 As InventorVBAMember ' Die erste Funktion aus dem ersten Modul Set oMem1 = oCom.InventorVBAMembers.Item("OnSaveDocument_mach_vorher") Dim oMem2 As InventorVBAMember ' Die zweite Funktion aus dem ersten Modul Set oMem2 = oCom.InventorVBAMembers.Item("OnSaveDocument_mach_nachher") If BeforeOrAfter = kBefore Then ' Funktion starten oMem1.Execute End If If BeforeOrAfter = kAfter Then ' Funktion starten oMem2.Execute End If ' Projekt wieder entfernen oPro.Close End Sub