sstr = IncomingString
'Where is the first . (dot)
Code:
iDot = InStr(sstr,".")
iDollar = InStr(sstr,"$")
Dollars = Mid(sstr,iDollar+1,iDot-1)
Cents = Mid(sstr,iDot+1,2)
'Test for negative
If Mid(sstr,iDollar-1) = "(" Then
Amount = "(" & Dollars & "." & Cents & ")"
else
Amount = Dollars & "." & Cents
End if
'Cut of the calculation
sstr = mid(sstr,Len(Amount))
Amount = CCur(Amount)
This code extracts the FIRST value then Cuts that off the begginning of the string you would have to repeat this five times in a loop but only worry about the ones you want.
EDIT
If the first value is a negative is the extra digit inside or outside the closing bracket
($67.551) or ($67.55)1
This is aircode and as such untested.
David