Hallo @ all,
ich möchte im Zuge meiner Abschlussarbeit 3D-Flächen mit Hilfe von VBA automatisch in 3D-Volumenkörper wandeln und diese Dann weiter bearbeiten (auch mit VBA), sodass ich mit wenigen Klicks vordefinierte Schritte (fast) selbstständig ablaufen lassen kann.
Ich habe auch ein paar Tutorials durchgeführt und einige Hilfen zu dem Thema, auch die Inventor Programmierungshilfe angeschaut.
Weiter habe ich mit dem "transcripting" einige Befehle vorgeklickt und wollte diese dann in die VBA einbetten. Leider funktioniert das nicht, denn ich bekomme immer Syntax- und/oder Compiler-Fehler. Woran liegt das? Stimmen die Befehle nicht überein (Zwischen VBA und Transcripting)?
Kann mir jemand mal einen Tip geben oder vielleicht nur mal den Code zum Dehnen einer Fläche? Ich denke, wenn ich das mal habe, dürfte der Rest nur noch wenig Probleme bereiten.
Hier mal den Code aus der Transcripting-File. In den Zeilen, die mit ActiveDocument.Execute... und Inventor.Execute... beginnen sind offensichtlich Syntaxfehler (sind Rot). Die Fehlermeldung ist leider immer nur "Syntax error".
Public Sub Extend_Blade()
Dim Inventor As Application
Dim ActiveDocument As Inventor.Document
Dim ExtendBladeDistance As Double
ExtendBladeDistance = 10.5
ActiveDocument.Execute("Document1","CheckDocument","DocumentName=Document1;NewDocument=0;Version=13;AllowRetry=0;AllowIgnore=0;")
Inventor.Execute("OpenFrame","DocumentName=Document1;AllowRetry=0;AllowIgnore=0;")
Set ActiveDocument = Inventor.Execute("ActivateDocument", "FrameName=Frame1;AllowRetry=0;AllowIgnore=0;")
ActiveDocument.Execute("Document1","Create Extend","Edges=[0 T::3 P::[0x40000000 0x4031ffc9 0x66667000 0x3ecc5666 0xbbbbbbbd 0x400c1ea4 ] B::[16],];Bodies=[Document1.PmDCSegment.41,];Edge2Body=[0,];ExtendType=1;TerminationType=1;Distance=ExtendBladeDistance;AllowRetry=1;AllowIgnore=0;")
' so tut es auch nicht:
'ActiveDocument.Execute("Document1","Create Extend","Edges=[0 T::3 P::[0x40000000 0x4031ffc9 0x66667000 0x3ecc5666 0xbbbbbbbd 0x400c1ea4 ] B::[16],];Bodies=[Document1.PmDCSegment.41,];Edge2Body=[0,];ExtendType=1;TerminationType=1;Distance=10.5;AllowRetry=1;AllowIgnore=0;")
Inventor.Execute("SaveDocument","DocumentName=Document1;DocumentPathName=N:\User\Hesse\Bachelor\Input_Maschinen\hohewarte\Imported Components\francis\francis.ipt;SaveCopyAs=0;RepName=Hauptansicht;AllowRetry=0;AllowIgnore=0;")
Set ActiveDocument = Inventor.Execute("ActivateDocument", "AllowRetry=0;AllowIgnore=0;")
End Sub
Vielen Dank schon mal im Voraus
Conan2712
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP