I"m sending solution of your answer but with some restriction as i worked on it hard but couldn't still sort it out completely .... anyway you can check and may be put some more checks on it ......... pls. do let me know in case of any success .........
Sub Array_Replace()
Dim a(150) As Double
Dim b(150) As Double
Application.ScreenUpdating = False
Columns("A:A").Select
' Don't write .1 Oz as it will not convert it as most of the times you have written 0.1 so i convert 0.1
' Also, if you have written foum2.5 Oz then it will not work as there
' must be a space between text & number foum 2.5 Oz
' This procedures is to control Oz if you have written Oz with number like 2.5OZ
Selection.Replace What:=" OZ", Replacement:="Oz", LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="OZ", Replacement:=" Oz", LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
For i = 0 To 9 Step 0.1
a(i) = Round(i + 0.1, 1)
b(i) = Round(a(i) * 29.75, 0)
Selection.Replace What:=" " & a(i) & " OZ", Replacement:=" " & a(i) & " Oz" & "/" & b(i) & " ml", LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Next
Application.ScreenUpdating = True
End Sub
Never ashamed to get or give Advise.
Muhammad Mubashir Aziz , Lodhran