Sub ImportRhino() ' Set Rhino translator’s CLSID and the Rhino file name. Dim strCLSID As String Dim strFileName As String strCLSld = "{2CB23BF0-E2AC-4b32-B0A1-1CC292AF6623}" ' Please set the full file name here, such as "C:\ETTI.3dm" strFileName = "ETTI.3dm" Dim oAddIns As ApplicationAddIns Set oAddIns = ThisApplication.ApplicationAddIns ' Find the Rhino translator, get the CLSID and activate it. Dim oPeTransAddIn As TranslatorAddIn Set oPeTransAddIn = oAddIns.ItemById(strCLSld) oPeTransAddIn.Activate ' Get the transient object and take it as a factory to produce other objects Dim transientObj As TransientObjects Set transientObj = ThisApplication.TransientObjects ' Prepare the first parameter for Open(), the file name Dim file As DataMedium Set file = transientObj.CreateDataMedium file.FileName = strFileName ' Prepare the second parameter for Open(), the open type. Dim context As TranslationContext Set context = transientObj.CreateTranslationContext context.Type = kDataDropIOMechanism ' Prepare the 3rd parameter for Open(), the options. Dim options As NameValueMap Set options = transientObj.CreateNameValueMap options.Value("SaveComponentDuringLoad") = False options.Value("SaveLocationIndex") = 0 options.Value("ComponentDestFolder") = "" options.Value("ImportSolid") = True options.Value("ImportSurface") = True options.Value("ImportWire") = True options.Value("ImportPoint") = False options.Value("CreateSurfIndex") = 1 options.Value("GroupNameIndex") = 0 options.Value("GroupName") = "" options.Value("CEGroupLevel") = 0 options.Value("CEPrefixCk") = False options.Value("CEPrefixString") = "" options.Value("ImportUnit") = 0 options.Value("CheckDuringLoad") = False options.Value("AutoStitchAndPromote") = True options.Value("AdvanceHealing") = False ' Prepare the fourth parameter for Open(), the final document. Dim sourceObj As Object ' Open the Rhino file. oPeTransAddIn.Open file, context, options, sourceObj End Sub