Try this version of the macro - it doesn't require the secondary macros.
Code:
Sub MoveBlockToBeginningOfSentence()
Dim aRngMove As Range, aRngStart As Range
Set aRngMove = Selection.Range
If aRngMove.Characters.Last <> " " Then 'ensure the selection includes a space at the end
aRngMove.MoveEndUntil cset:=" "
aRngMove.MoveEnd Unit:=wdCharacter, Count:=1
End If
Set aRngStart = aRngMove.Sentences(1)
aRngStart.Characters(1).Case = wdLowerCase
aRngStart.Collapse Direction:=wdCollapseStart
aRngMove.Characters(1).Case = wdTitleWord
aRngStart.FormattedText = aRngMove.FormattedText
aRngMove.Delete
End Sub