If you want to process floating shapes - including any empty paragraphs they're attached to - as well, try:
Code:
Sub Demo()
Application.ScreenUpdating = False
With ActiveDocument
Do While .Shapes.Count > 0
.Shapes(1).ConvertToInlineShape
Loop
With .Range.Find
.Execute FindText:="^g^p", ReplaceWith:="", Wrap:=wdFindContinue, Replace:=wdReplaceAll
.Execute FindText:="^g^l", ReplaceWith:="", Wrap:=wdFindContinue, Replace:=wdReplaceAll
.Execute FindText:="^g", ReplaceWith:="", Wrap:=wdFindContinue, Replace:=wdReplaceAll
End With
End With
Application.ScreenUpdating = True
End Sub