Thanks cpt09135. I eventually figured it out and wrote this code in Excel's VB Developer:
Private Sub LoadNodalData()
Dim femap As Object
Set femap = GetObject(, "femap.model")
'Dimension these variables so that they can take the form of the object commands
Dim nd As Object
Dim mt As Object
Dim pr As Object
Dim el As Object
Dim pt As Object
Dim cv As Object
'Dimensions for frame outputs
Dim rc As Long
Dim sP As Long
Dim eP As Long
Dim EndPoints As Variant
Dim i As Long
Dim j As Long
'Element outputs
Dim sc As Long
Dim dAA As Double
Dim dAB As Double
Dim Area As Variant
'Force, Displacement, Stress, ETC Output variables and calls
Dim s As Object
Dim v As Object
Dim e As Object
Dim ov As femap.Output
Dim pc As Long
Dim ppc As Long
Dim Col As Long
Dim Row As Long
Dim minID As Long
Dim maxID As Long
Dim minVAL As Double
Dim maxVAL As Double
Dim Count As Long
Dim ID As Variant
Dim IDen As Long
Dim Title As Variant
Dim ouSetID As Long
Dim ouVec As femap.Output
Set ouVec = femap.feOutput
Dim CurrentData As Double
'Simplifying the application call names
Set nd = femap.feNode
Set mt = femap.feMatl
Set pr = femap.feProp
Set el = femap.feElem
Set pt = femap.fePoint
Set cv = femap.feCurve
Set e = femap.feSet
Set ov = femap.feOutput
'Clear Contents
Range(Selection, Selection.SpecialCells(xlLastCell)).Select
With Selection
.Clear
End With
'Getting Material, Property, Element Data
'The numbers in the () represent property type, i.e: 1 corresponds to Property 1 or 1 _
corresponds to Material 1 listed in the Property or Material Tree.
'The pt is starting at ID 0, since there is no ID 0 it will go to 1.
mt.Get (1)
pr.Get (1)
pt.Get (0)
'Creating Title Bar
Range("A1:H1").Select
With Selection
.MergeCells = True
.Font.Bold = True
.HorizontalAlignment = xlCenter
End With
Worksheets(1).Range("A1:H1").Value = "Truss Problem"
'Declaring starting row
Row = 5
'Formatting the Header
Rows(Row).Select
With Selection
.HorizontalAlignment = xlCenter
.Font.Bold = True
End With
Worksheets(1).Cells(Row, 1).Value = "Point ID"
Worksheets(1).Cells(Row, 2).Value = "X"
Worksheets(1).Cells(Row, 3).Value = "Y"
Worksheets(1).Cells(Row, 4).Value = "Z"
Worksheets(1).Cells(Row, 5).Value = "Material"
Worksheets(1).Cells(Row, 6).Value = "M. of Elasticity"
While pt.Next
Row = Row + 1
'Formating CoorCells
Range(Cells(Row, 2), Cells(Row, 4)).Select
With Selection
.HorizontalAlignment = xlCenter
End With
Worksheets(1).Cells(Row, 1).Value = pt.ID
Worksheets(1).Cells(Row, 2).Value = pt.x
Worksheets(1).Cells(Row, 3).Value = pt.y
Worksheets(1).Cells(Row, 4).Value = pt.Z
Worksheets(1).Cells(Row, 5).Value = mt.Title
Worksheets(1).Cells(Row, 6).Value = mt.Ex
Wend
'Row operation, so that the worksheet can accomidate any size truss
Row = Row + 4
'Formatting the Header
Rows(Row).Select
With Selection
.HorizontalAlignment = xlCenter
.Font.Bold = True
End With
Worksheets(1).Cells(Row, 1).Value = "Member ID"
Worksheets(1).Cells(Row, 2).Value = "Length"
Worksheets(1).Cells(Row, 3).Value = "Start Point"
Worksheets(1).Cells(Row, 4).Value = "End Point"
Worksheets(1).Cells(Row, 5).Value = "Area"
'Loop for each element
i = 1
While cv.Next
el.Next
i = i + 1
'In Loop, to get start and end points
rc = cv.Get(i)
rc = cv.EndPoints(sP, eP)
'In Loop, to get start and end area
sc = el.Get(i)
sc = el.Area(dAA, dAB)
Row = Row + 1
'Formatting the Length and Area
Cells(Row, 2).Select
With Selection
.NumberFormat = "0.000"
.HorizontalAlignment = xlCenter
End With
Cells(Row, 5).Select
With Selection
.NumberFormat = "0.000"
.HorizontalAlignment = xlCenter
End With
'Printing in designated row and column
Worksheets(1).Cells(Row, 1).Value = cv.ID
Worksheets(1).Cells(Row, 2).Value = cv.length
Worksheets(1).Cells(Row, 3).Value = sP
Worksheets(1).Cells(Row, 4).Value = eP
Worksheets(1).Cells(Row, 5).Value = dAA
Wend
'Force/Displacement Outputs
i = Row + 6
j = Row + 4
Worksheets(1).Cells(j, 1) = "Output Set ID"
Worksheets(1).Cells(j, 2) = "Element ID"
rc = femap.feSelectOutput("Select", 0, FOT_ANY, FOC_ANY, FT_ELEM, False, s, v)
sc = e.Select(FT_ELEM, True, "select")
While s.Next
v.Reset
Col = 3
While v.Next
e.Reset
pc = ov.GetFromSet(s.CurrentID, v.CurrentID)
ppc = ov.GetTitleIDList(False, v.CurrentID, v.CurrentID, Count, ID, Title)
Row = i
While e.Next()
Worksheets(1).Cells(Row, 1).Value = s.CurrentID
Worksheets(1).Cells(Row, 2).Value = e.CurrentID
ouVec.SetID = s.CurrentID
rc = ouVec.Get(v.CurrentID)
CurrentData = ouVec.Value(e.CurrentID)
Worksheets(1).Cells(Row, Col) = CurrentData
Cells(Row, Col).Select
With Selection
.NumberFormat = "0.000"
.HorizontalAlignment = xlRight
End With
Row = Row + 1
Wend
Worksheets(1).Cells(j, Col).Value = Title
Worksheets(1).Cells(j + 1, Col).Value = ID
Col = Col + 1
Wend
i = Row
Wend
End Sub