Interfaz COM en VBA | 1. Abrir RFEM, crear y guardar modelo, cerrar RFEM

Consejos y trucos

La primera parte de la publicación sobre la interfaz COM describe la apertura y el cierre de RFEM. El lenguaje de programación VBA se usa en Excel, sin embargo, la secuencia del programa es la misma que para la programación con C #. Primero, es necesario agregar la referencia correspondiente en VBA para reconocer los comandos para la interfaz. La figura de la izquierda muestra el ejemplo de RFEM 5.

Luego, el código fuente de un programa simple. Puede crear la interfaz para el modelo primero y luego abrir el programa usando el modelo. Después de guardar, el programa se cierra.

Siempre es bueno usar el controlador de errores para detectar y mostrar los posibles problemas de entrada / salida. Si hay un problema, la licencia se desbloquea nuevamente para que pueda acceder a RFEM / RSTAB. Una explicación más detallada se puede encontrar en el código fuente.

Sub CreateModel()
' Firstly, an interface
' to a new model is created.
Dim iModel As RFEM5.model
Set iModel = New RFEM5.model

' Here, the model name is defined,
' either the content of cell B2 of sheet Table1
' or, if empty, "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

' Transfer of the model name to the interface.
iModel.SetName(modelName)

' It is possible to specify a model description here.
iModel.SetDescription( "description" )

' Error handling routine.
On Error GoTo

Dim iApp As RFEM5.Application
' Interface to the program is opened.
' (Program is started.)
Set iApp = iModel.GetApplication

' COM license and program access are blocked.
iApp.LockLicense

' Program is displayed in the foreground.
iApp.Show

' Model is saved at "C:\temp" .
iModel.Save("C:\temp\" & modelName)

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

' COM license is unblocked, program access possible again.
iModel.GetApplication.UnlockLicense
' Program is closed.
iApp.Close

End Sub

Enlaces

Contacte con nosotros

Contacte con Dlubal Software

¿Tiene preguntas o necesita asesoramiento?
Contacte con nosotros a través de nuestro servicio de asistencia gratuito por correo electrónico, chat o fórum, o encuentre varias soluciones sugeridas y consejos útiles en nuestra página de preguntas más frecuentes (FAQ).

+34 911 438 160

info@dlubal.com

RFEM Programa principal
RFEM 5.xx

Programa principal

Software de ingeniería estructural de análisis por elementos finitos (AEF) para sistemas estructurales planos o espaciales compuestos de barras, placas, muros, láminas, sólidos y elementos de contacto

Precio de la primera licencia
3.540,00 USD
RFEM Otros
RF-COM 5.xx

Módulo adicional

Interfaz programable (API) basada en tecnología COM

Precio de la primera licencia
580,00 USD