Imports Inventor.UnitsTypeEnum Dim oParams As Parameters oParams=ThisDoc.Document.ComponentDefinition.Parameters Dim oUserParams As UserParameters oUserParams=oParams.UserParameters 'look for user parameter SheetMetalLength and try to set it Try oUserParams("SheetMetalLength").Value = SheetMetal.FlatExtentsLength *2.54 Catch ' assume error means not found and create it oUserParams.AddByValue("SheetMetalLength", SheetMetal.FlatExtentsLength *2.54, kInchLengthUnits) End Try 'look for user parameter SheetMetalWidth and try to set it Try oUserParams("SheetMetalWidth").Value = SheetMetal.FlatExtentsWidth *2.54 Catch ' assume error means not found and create it oUserParams.AddByValue("SheetMetalWidth", SheetMetal.FlatExtentsWidth *2.54, kInchLengthUnits) End Try 'look for user parameter Cutlength hand try to set it Try oUserParams("Cutlength").Value = SheetMetal.FlatExtentsLength *2.54 Catch ' assume error means not found and create it oUserParams.AddByValue("Cutlength", SheetMetal.FlatExtentsLength *2.54, kInchLengthUnits) End Try 'create list of parameters to format 'add more if needed Dim myArrayList As New ArrayList myArrayList.add("SM_Length") myArrayList.add("SheetMetalLength") myArrayList.add("Cutlength") myArrayList.add("Thickness") Dim oString as Object Dim oParam As Parameter Dim oFormat As CustomPropertyFormat 'set the list item number to start at zero i=0 'step through the parameter list (myArrayList) 'and format each member of the list For Each oString in myArrayList myParam = myArrayList.Item(i) oParam = oParams(myParam) oParam.ExposedAsProperty = True oFormat = oParams(myParam).CustomPropertyFormat oFormat.PropertyType=Inventor.CustomPropertyTypeEnum.kTextPropertyType oFormat.Precision=Inventor.CustomPropertyPrecisionEnum.kSixteenthsFractionalLengthPrecision oFormat.ShowUnitsString = False 'increment the list itme number by 1 i= i+1 Next 'set the description to read in the iProperties 'iProperties.Value("Project", "Description") = "= SH x " 'update the file iLogicVb.UpdateWhenDone = True