Hallo,
ich bin ein Anfänger was VBA in Inventor betrifft. Mein Ziel ist es, dass beim öffnen einer .ipt Datei ein Makro mit UserForm automatisch gestartet wird. So weit kein Thema. Nun soll in dem Form eine Schaltfläche für die derzeit verwendeten Parameter, eine Schaltfäche für Parameter änderung und eine Schaltfläche für aktualisieren und schließen des Userform enthalten sein. Das ganze bekomme ich hin wenn ich die ipt offen habe, sprich aktive ist, aber nicht wenn ich die Datei neu lade. Da kommt dann ein Fehler. Ich denke es liegt daran, dass ich im Code ThisApplication.ActiveDocument verwenden. Kann jemand weiter helfen, wie muss ich es ändern?
der bisherige Code ist (Funktionier einwandfrei bei geladenem ipt):
Option Explicit
Dim oPartdoc As Inventor.PartDocument
Dim oParams As Parameters
Dim hoehe_aktuell As Double
Dim hoehe_neu As Double
Private Sub CommandButton1_Click()
Set oPartdoc = ThisApplication.ActiveDocument
Set oParams = oPartdoc.ComponentDefinition.Parameters
'Parameter ändern
hoehe_neu = TextBox2.Value
oParams.Item("hoehe").Value = hoehe_neu / 10
End Sub
Private Sub CommandButton2_Click()
Set oPartdoc = ThisApplication.ActiveDocument
Set oParams = oPartdoc.ComponentDefinition.Parameters
'Parameter auslesen
hoehe_aktuell = oParams.Item("hoehe").Value * 10
TextBox1.Text = hoehe_aktuell
End Sub
Private Sub CommandButton3_Click()
ThisApplication.ActiveDocument.Rebuild
UserForm1.Hide
End Sub
Private Sub TextBox2_Change()
End Sub
Private Sub UserForm_Click()
End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP