Interface COM no VBA | 1. Abrindo o RFEM, Criando e Salvando o Modelo, Fechando o RFEM

Sugestões e truques

A primeira parte do post sobre a interface COM descreve a abertura e o fechamento do RFEM. A linguagem de programação VBA é usada no Excel, no entanto, a seqüência do programa é a mesma usada para programar com o C #. Primeiro, é necessário adicionar a referência correspondente no VBA para reconhecer os comandos da interface. A figura à esquerda mostra o exemplo do RFEM 5.

Então, o código fonte de um programa simples. Você pode criar a interface para o modelo primeiro e depois abrir o programa usando o modelo. Depois de salvar, o programa é fechado.

É sempre bom usar o manipulador de erros para detectar e exibir os possíveis problemas de entrada / saída. Se houver algum problema, a licença será desbloqueada novamente para que você possa acessar o RFEM / RSTAB. Mais explicações podem ser encontradas no código-fonte.

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

Ligações

Contacto

Contacto da Dlubal

Tem alguma questão ou necessita de ajuda? Então entre em contacto com a nossa equipa de apoio técnico gratuita por e-mail, chat ou no fórum, ou então consulte as perguntas mais frequentes (FAQ).

+49 9673 9203 0

(falamos português)

info@dlubal.com

RFEM Programa principal
RFEM 5.xx

Programa principal

Software de engenharia estrutural para análises de elementos finitos (AEF) de estruturas planas e espaciais constituídas por lajes, paredes, vigas, sólidos e elementos de contacto

Preço de primeira licença
3.540,00 USD
RFEM Outros
RF-COM 5.xx

Módulo adicional

Interface programável (API) com base na tecnologia COM

Preço de primeira licença
580,00 USD