Ok I found some code that I've added to what i already had and it gets the results I need.
Not pretty but it kind of works and I'm slowly (very slowly) starting to get the jist of how it works.
But,
Can anyone tell me why I have to run the script twice before it changes everything?
---------------------------------------------------------------------------------------------
Sub CATMain()
Dim documents1
Set documents1 = CATIA.Documents
Set Document = CATIA.ActiveDocument
Dim selection1
Set selection1 = Document.Selection
Set Info = selection1.Item(1)
Dim Dimension1
Set Dimension1 = Info.Value
Dim DimTolValue
Set DimTolValue = Dimension1
Dim oTolType
Dim oDisplayMode
Dim oTolName
Dim oUpTolS
Dim oLowTolS
Dim oUpTolD
Dim oLowTolD
DimTolValue.GetTolerances oTolType, oTolName, oUpTolS, oLowTolS, oUpTolD, oLowTolD, oDisplayMode
oTolName = "TOL_NUM2"
oUpTolD = 0.2
oLowTolD = -0.0
DimTolValue.SetTolerances oTolType, oTolName, oUpTolS, oLowTolS, oUpTolD, oLowTolD, oDisplayMode
Dim DimDimValue
Set DimDimValue = Dimension1.GetValue
DimDimValue.SetFormatName 1, "ANS.DIMM"
DimDimValue.SetFormatPrecision 1, "0.100" 'precision
Dim oNoOff
oNoOff=InputBox ( "Enter No Off Holes" )
Dim oNoOffText
oNoOffText = "("& oNoOff &"x) "
Dim oBefore
oBefore =oNoOffText
Dim oAfter
oAfter =" THRO'"
Dim oUpper
'oUpper = "Upper"
Dim oLower
'oLower = "Lower"
Dimension1.GetValue.SetBaultText 1, oBefore, oAfter, oUpper, oLower
Dim myDim 'As DrawingDimension
Set myDim = CATIA.ActiveDocument.Selection.Item(1).Value
Dim myDimLine 'As DrawingDimLine
Set myDimLine = myDim.GetDimLine
myDimLine.DimLineGraphRep = catDimLine2Parts
MyDim.RestoreValuePosition()
End Sub
----------------------------------------------------------------------------------------