Hallo
Ich habe einen Tunnel bestehend aus 133 Blöcken (iAssemblys) modelliert. Blöcke haben gleichen Querschnitt, aber unterschiedlich in der Länge. Diese Blöcke bilden eine 3D Kurve. Die Blöcke bestehen aus 37 Bauteilen (iParts). In diesen iParts sind die 3D Koordinaten hinterlegt (in der iPart Tabelle). Jedes iPart hat seine Koordinaten.
Diese iParts sind im Moment mit eine externe Excel Tabelle (mit den Koordinaten) verknüpft. Das macht das Ganze sehr träge. Jede Koordinaten Aktualisierung dauert sehr lang. Deswegen möchte ich mittels untenstehenden Programm die Änderungen aus der ex.Tabelle zu den iParts Tabellen weiterleiten.
Public Sub TableParameters()
Dim oPartDoc As Inventor.PartDocument
' Obtain the active document, this assumes that
' a part document is active in Inventor
Set oPartDoc = ThisApplication.ActiveDocument
'Obtain the Parameters collection
Dim oParams As Parameters
Set oParams = oPartDoc.ComponentDefinition.Parameters
' Add a parameter table using an existing spreadsheet.
oParams.ParameterTables.AddExcelTable "C:\Temp\params.xls", "A1", True
' Accessing a parameters in a linked/embedded file
Dim oParamTableFiles As ParameterTables
Set oParamTableFiles = oParams.ParameterTables
' Traverse through the collection of linked files
Dim oParamTableFile As ParameterTable
For Each oParamTableFile In oParamTableFiles
' Change the linked file to another file
If LCase(oParamTableFile.FileName) = "C:\temp\params.xls" Then
oParamTableFile.FileName = "C:\Temp\newparams.xls"
End If
' Get the Parameters collection from the file
Dim oTableParams As TableParameters
Set oTableParams = oParamTableFile.TableParameters
' Traverse through the table parameters collection and display them
Dim iNumTableParams As Long
Debug.Print "TABLE PARAMETER VALUES"
For iNumTableParams = 1 To oTableParams.Count
' Display the name
Debug.Print " Name: " & oTableParams.Item(iNumTableParams).Name
' Display the expression
Debug.Print " Expression: " & oTableParams.Item(iNumTableParams).Expression
' Display the value. This will be in database units.
Debug.Print " Value: " & oTableParams.Item(iNumTableParams).Value
Next iNumTableParams
Next
End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP