Ich arbeite oft mit VBA, bin jedoch neu bei Inventor. Ich arbeite mich gerade ein wenig ein, in dem ich kleinere Makros schreibe, die mir das arbeiten mit Inventor erleichtern sollen.
Nun versuche ich in einer IDW Zeichnung eine markierte Bemaßung per Makro zu bearbeiten, um Genauigkeit und Toleranz anzupassen.
Das mithilfe der Programmierhilfe erstellte Makro, sieht wie folgt aus:
Code:
Public Sub Makro_Test() Dim oDrawDoc As DrawingDocument
Set oDrawDoc = ThisApplication.ActiveDocument
Dim oSelectSet As SelectSet
Set oSelectSet = oDrawDoc.SelectSet
Dim colDimensions As New Collection
Dim i As Long
For i = 1 To oSelectSet.Count
If TypeOf oSelectSet.Item(i) Is DrawingDimension Then
colDimensions.Add oSelectSet.Item(i)
End If
Next
If colDimensions.Count < 1 Then
MsgBox "Mindestens ein Maß muss markiert sein."
Exit Sub
End If
Dim oDimension As DrawingDimension
Set oDimension = colDimensions.Item(1)
Dim oTol As Tolerance
Set oTol = oDimension.Tolerance
oTol.SetToLimits kLimitsFitsStackedTolerance, "H7", ""
End Sub
Beim ausführen wirft Methode 'SetToLimits' einen Fehler (Run-Time Error '5': Invalid procedure call or argument).
Ich konnte beobachten, dass es mit der Methode 'SetToSymetric' funktioniert. Nach längerem Suchen und Probieren bin ich nun auf Hilfe angewiesen, da ich den Fehler nicht nachvollziehen kann. Ich habe es auch mit einem 'Call' versucht, mit leider der selben Fehlermeldung.
Da ich gerade erst damit angefangen habe, mit der Inventor API zu arbeiten, bin ich mir fast sicher, es ist ein Syntax-, Symantikfehler meinerseits.
Ich bitte um eure Mithilfe.
[Diese Nachricht wurde von Flußgeist am 10. Apr. 2013 editiert.]
[Diese Nachricht wurde von Flußgeist am 10. Apr. 2013 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP