Hi Kilosub,
The code's just a series of
wildcard Find/replace operations, using a loop (you said you wanted a loop

) to go through a series of them (per the StrFind & StrRep variables) before using two more in linear form for the bolding.
The 'save' message is occuring because of how extensive the changes are. You can probably both eliminate the prompt and make the code run faster by adding the lines:
Application.ScreenUpdating = False
Application.DisplayAlerts = wdAlertsNone
immediately after the line:
Sub StatementReformatter()
and by inserting:
Application.ScreenUpdating = True
before the line:
End Sub
As for the spacing, I simply took that from what you'd posted. If you want to reduce the# of empty lines, go to the line:
StrRep = "^m^p^p^p^p^p^p\1^p^p ...
and decrease the # of '^p' sequences after the '^m'. For example:
StrRep = "^m^p^p^p\1^p^p ...
will halve the amount of white space. Alternatively (or as well), you could reduce the size of your document's top/bottom margins.