Interface COM en VBA | 1. Ouvrir RFEM, créer et enregistrer un modèle, fermer RFEM

Trucs & Astuces

Ce premier article à propos de l’interface COM décrit l’ouverture et la fermeture de RFEM. Le langage de programmation VBA est utilisé dans Excel, toutefois la séquence de programme est identique à la programmation en C#. Il est tout d’abord nécessaire d’ajouter la référence correspondante en VBA pour reconnaître les commandes pour l’interface. La figure de gauche donne l’exemple de RFEM 5.

Ensuite le code source pour un programme simple est à ajouter. Vous pouvez d’abord créer l’interface pour le modèle puis ouvrir le programme avec le modèle. Après la sauvegarde, fermez le programme.

Il est toujours bon d’utiliser le gestionnaire d’erreurs pour détecter et afficher les problèmes d’entrée/sortie potentiels. En cas de problèmes, la licence est à nouveau débloquée et vous pouvez accéder à nous à RFEM/RSTAB. Retrouvez plus d’explications dans le code source.

Sub CreateModel()
' Tout d'abord, création d'une interface
' pour un nouveau modèle.
Dim iModel As RFEM5.model
Set iModel = New RFEM5.model

' Définition du nom de modèle soit
' avec le contenu de la cellule B2 de la feuille du tableau1
' ou, si vide, "test.rf5".
Dim modelName As String
If IsEmpty(Worksheets("Table1").Range("B2").Value) Then
modelName = "test01.rf5"
Else
modelName = CStr(Worksheets("Tabelle1").Range("B2").Value)
End If

' Transfert du nom de modèle à l'interface.
iModel.SetName(modelName)

' Il est possible de préciser la description de modèle ici.
iModel.SetDescription("description")

' Routine du gestionnaire d'erreurs.
On Error GoTo e

Dim iApp As RFEM5.Application
' Ouverture de l'interface de programme.
' (Le programme est démarré.)
Set iApp = iModel.GetApplication

' Licence COM et accès au programme bloqués.
iApp.LockLicense

' Affichage du programme au premier plan.
iApp.Show

' Sauvegarde du modèle dans "C:\temp".
iModel.Save("C:\temp\" & modelName)

e: If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source

' Licence COM débloquée, l'accès au programme est à nouveau possible.
iModel.GetApplication.UnlockLicense
' Fermeture du programme.
iApp.Close

End Sub

Liens

Contactez-nous

Contactez-nous

Vous avez des questions relatives à nos produits ? Vous avez besoin de conseils pour votre projet en cours ? Contactez-nous ou visitez notre FAQ, vous y trouverez de nombreuses astuces et solutions.

+33 1 78 42 91 61

info@dlubal.fr

RFEM Logiciel principal
RFEM 5.xx

Programme de base

Logiciel de calcul de structures aux éléments finis (MEF) pour les structures 2D et 3D composées de plaques, voiles, coques, barres (poutres), solides et éléments d'assemblage

Prix de la première licence
3 540,00 USD