Réponse:
Pour calculer uniquement certains cas de charge, combinaisons de charges ou de résultats, comme c'est le cas à l'aide de la commande « À calculer... » (voir la Figure 01), vous pouvez utiliser la méthode CalculateBatch de l'interface ICalculation. Pour le transfert, cette méthode nécessite un champ avec le type de chargement Loading. Il inclut le numéro de la charge et son type (une combinaison de charges, par exemple) :
Sub batch_test()
' get interface from the opened model and lock the licence/program
Dim iModel As RFEM5.IModel3
Set iModel = GetObject(, "RFEM5.Model")
iModel.GetApplication.LockLicense
On Error GoTo e
' get interface for calculation
Dim iCalc As ICalculation2
Set iCalc = iModel.GetCalculation
' create array with loading types
Dim loadings(3) As Loading
loadings(0).no = 1
loadings(0).Type = LoadCaseType
loadings(1).no = 4
loadings(1).Type = LoadCaseType
loadings(2).no = 4
loadings(2).Type = LoadCombinationType
' calculate all loadings from the array at once
iCalc.CalculateBatch loadings
e: If Err.Number <> 0 Then MsgBox Err.description, , Err.Source
Set iModelData = Nothing
iModel.GetApplication.UnlockLicense
Set iModel = Nothing
End Sub