ENGKHURRAMALI
Civil/Environmental
- Feb 8, 2016
- 2
Dear all,
I have question that , is there any way i can connect my existing modal of etabs to excel vba through API. I wand to modify load combination , my modal have already combos , i want to replace it with new one
I have found some vba code in ETABS refrence file , but it create a new model and i want to modify an existing model , code is below as:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Sub Example()
Dim SapModel As cSapModel
Dim EtabsObject As cOAPI
Dim ret As Integer = -1
Dim Selected As Boolean
'create ETABS object
EtabsObject = CreateObject("CSI.ETABS.API.ETABSObject")
'start ETABS application
ret = EtabsObject.ApplicationStart()
'create SapModel object
SapModel = EtabsObject.SapModel
'initialize model
ret = SapModel.InitializeNewModel()
'create steel deck template model
ret = SapModel.File.NewSteelDeck(4,12,12,4,4,24,24)
'add combo
ret = SapModel.RespCombo.Add("COMB1", 0)
'add load case to combo
ret = SapModel.RespCombo.SetCaseList("COMB1", eCNameType.LoadCase, "DEAD", 1.4)
'run analysis
System.IO.Directory.CreateDirectory("c:\CSI_API_temp")
ret = SapModel.File.Save("C:\CSI_API_temp\example.edb")
ret = SapModel.Analyze.RunAnalysis
'deselect all cases and combos
ret = SapModel.Results.Setup.DeselectAllCasesAndCombosForOutput
'set combo selected for output
ret = SapModel.Results.Setup.SetComboSelectedForOutput("COMB1")
'check if combo is selected
ret = SapModel.Results.Setup.GetComboSelectedForOutput("COMB1", Selected)
'close ETABS
EtabsObject.ApplicationExit(False)
'clean up variables
SapModel = Nothing
EtabsObject = Nothing
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
can any suggest me to modify above code for existing model
thanks in advance
I have question that , is there any way i can connect my existing modal of etabs to excel vba through API. I wand to modify load combination , my modal have already combos , i want to replace it with new one
I have found some vba code in ETABS refrence file , but it create a new model and i want to modify an existing model , code is below as:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Sub Example()
Dim SapModel As cSapModel
Dim EtabsObject As cOAPI
Dim ret As Integer = -1
Dim Selected As Boolean
'create ETABS object
EtabsObject = CreateObject("CSI.ETABS.API.ETABSObject")
'start ETABS application
ret = EtabsObject.ApplicationStart()
'create SapModel object
SapModel = EtabsObject.SapModel
'initialize model
ret = SapModel.InitializeNewModel()
'create steel deck template model
ret = SapModel.File.NewSteelDeck(4,12,12,4,4,24,24)
'add combo
ret = SapModel.RespCombo.Add("COMB1", 0)
'add load case to combo
ret = SapModel.RespCombo.SetCaseList("COMB1", eCNameType.LoadCase, "DEAD", 1.4)
'run analysis
System.IO.Directory.CreateDirectory("c:\CSI_API_temp")
ret = SapModel.File.Save("C:\CSI_API_temp\example.edb")
ret = SapModel.Analyze.RunAnalysis
'deselect all cases and combos
ret = SapModel.Results.Setup.DeselectAllCasesAndCombosForOutput
'set combo selected for output
ret = SapModel.Results.Setup.SetComboSelectedForOutput("COMB1")
'check if combo is selected
ret = SapModel.Results.Setup.GetComboSelectedForOutput("COMB1", Selected)
'close ETABS
EtabsObject.ApplicationExit(False)
'clean up variables
SapModel = Nothing
EtabsObject = Nothing
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
can any suggest me to modify above code for existing model
thanks in advance