' 6. Update the view App.feViewRegenerate (1) MsgBox "Done! Moved elements > 100 to group: " & myGroup.name End Sub
Sub MoveLargeElementsToGroup() ' 1. Declare and get FEMAP objects Dim App As femap.model Set App = GetObject(, "femap.model") ' Connect to running FEMAP Dim groupSet As femap.GroupSet Dim elemSet As femap.ElementSet Dim myGroup As femap.Group Dim elem As femap.Element
Open FEMAP, press Ctrl+Shift+V to open the VBA editor, click Record , create a simple geometry, stop recording, and study the code. That single exercise is worth more than reading a hundred pages. femap api tutorial
' 3. Get all elements Set elemSet = App.feElementSet elemSet.GetAll ()
Starting with VBA inside FEMAP provides a gentle learning curve, and the built-in macro recorder is the perfect tutor. The true power unfolds when you combine the API with parametric design studies, automated report generation, or integration with Excel/MATLAB/Python (via win32com). The initial investment in learning the FEMAP API pays exponential dividends in accuracy, speed, and the ability to push FEMAP far beyond its standard GUI capabilities. Declare and get FEMAP objects Dim App As femap
' 2. Create a new group Set groupSet = App.feGroupSet Set myGroup = groupSet.Add() myGroup.name = "My Beam" myGroup.Put (1) ' Save the group to database (ID=1 for new entity) newGroupID = myGroup.ID ' Store the new group's ID
' 4. Loop through elements For Each elem In elemSet If elem.ID > 100 Then ' 5. Add element to the new group elem.InGroup (newGroupID) ' True = add to group End If Next elem Get all elements Set elemSet = App
Create a group named "My Beam" and move all elements with ID > 100 into that group.