ConvertToReferenceParameter method works fine but not for built-in model parameters. See help. If you create model parameter programmatically then you are free to call this method. Try the following VBA sample.
Private Sub Model2Refs_1()
Dim oDef As PartComponentDefinition
Set oDef = ThisApplication.ActiveDocument.ComponentDefinition
Dim oPars As Parameters
Set oPars = oDef.Parameters
Dim oModelPars As ModelParameters
Set oModelPars = oPars.ModelParameters
Dim oModelPar As ModelParameter
'create model parameter (not built-in)
Set oModelPar = oModelPars.AddByExpression("333 mm", "mm", "NonBuiltIn")
'change its type to reference
Call oModelPar.ConvertToReferenceParameter
End Sub
You may control Boolean Driven property of dimension constraints. Create new part with the rectangle on the first sketch + create pair of dimensions (so you will get pair of model parameters). The following VBA code convert parameter which controls the first dimension constraint to reference type.
Private Sub Model2Refs_2()
Dim oDoc As PartDocument
Set oDoc = ThisApplication.ActiveDocument
Dim oDef As PartComponentDefinition
Set oDef = oDoc.ComponentDefinition
Dim oSketch As PlanarSketch
Set oSketch = oDef.Sketches.Item(1)
Dim oDims As DimensionConstraints
Set oDims = oSketch.DimensionConstraints
Dim oDim As TwoPointDistanceDimConstraint
Set oDim = oDims.Item(1)
oDim.Driven = True
End Sub
Hope the idea is clear.
Cheers,
Vladimir Ananyev
Developer Technical Services
Autodesk Developer Network