The macro worked fine here. What line generated the error?
.Text = "([0-9])([ ]{0,1})(l[!a-z])" results in an invalid pattern match. VBA can't find nothing [ ]{0,1} represent nothing
I'm not sure what you are really after, but if it is thins 6 l, 6 l or 6l = 6nbsl, 6nbsl and 6nbsl then try:
Sub ScratchMacro()
'A basic Word macro coded by Greg Maxey
Dim oRng As Word.Range
Set oRng = ActiveDocument.Range
With oRng.Find
.Text = "([0-9])([ ]{1,})(l[!a-z])"
.Replacement.Text = "\1^s\3"
.MatchWildcards = True
.Execute Replace:=wdReplaceAll
End With
Set oRng = ActiveDocument.Range
With oRng.Find
.Text = "([0-9])(l[!a-z])"
.Replacement.Text = "\1^s\2"
.MatchWildcards = True
.Execute Replace:=wdReplaceAll
End With
End Sub