I've Selected a section of text in a Word doc. I'm trying to copy the text, reformat it and regurgitate it back inline, after the original selection. I'm having trouble getting the code to work repeatedly.

For example, if the source said:
This is a source line. It’s a very nice source line of text.

I’d like the result to be:
This is a source line. It’s a very nice source line of text.
This is a source line. It’s a very nice source line of text.

I’d like to build on it later to do some FIND/REPLACE logic, but right now, I’d be happy if I can just get the new 2nd line to appear (using Style=Answer) immediately after the 1st line.

I've tried a few different ways of doing this, as you can see by the attached code fragments. Sometimes it works, sometimes it changes the following sentence, not the one selected. I must be missing something fundamental! Any insight would be greatly appreciated!


Sub Macro1()
    Selection.Copy
    Selection.TypeParagraph
    Selection.PasteAndFormat (wdFormatOriginalFormatting)
    Selection.Style = ActiveDocument.Styles("Answer")
    Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify
End Sub
Sub Macro2()
    Selection.Copy
    Selection.TypeParagraph
    Selection.PasteAndFormat wdListDontMerge
    Selection.Style = ActiveDocument.Styles("Answer")
    Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify
End Sub
Sub Macro4()
    Selection.Copy
    Selection.Collapse Direction:=wdCollapseEnd
    Selection.Move wdSentence, 1
    Selection.Style = ActiveDocument.Styles("Answer")
    Selection.PasteSpecial Link:=False, DataType:=wdPasteText, Placement:=wdInLine, DisplayAsIcon:=False
End Sub
Sub Macro5()

With Selection
    .Copy
    .Move Unit:=wdParagraph
'    .InsertParagraphAfter
'    .Collapse Direction:=wdCollapseStart
'    .PasteAndFormat (wdFormatOriginalFormatting)
    .PasteAndFormat wdListDontMerge
    .Style = ActiveDocument.Styles("Answer")
    .ParagraphFormat.Alignment = wdAlignParagraphJustify

End With

End Sub