Graham,
Not really understanding the precise goal of the OP, I did make a dog's breakfast out of this by not adequately testing what I posted. Thanks for jumping in!
heedaf,
If "... use of Selection didn't work for me ..." means:
Set oRng = Selection.Paragraphs(#).Range where # is some variable number and the error is "The requested member of the collection does not exists" then as Graham points out, a single point selection (i.e., the cursor flickering in a paragraph) or any selection that doesn't span 2 or more paragraphs can only have 1 paragraph.
If you want to evaluate a selected paragraph you can use:
Sub ScratchMacro()
'A basic Word macro coded by Greg Maxey, http://gregmaxey.com/word_tips.html, 7/14/2017
Dim oRng As Range
Set oRng = Selection.Paragraphs(1).Range
oRng.Start = oRng.Start + 10
oRng.End = oRng.Start + 5
Select Case oRng.Font.Bold
Case 0: MsgBox "Not bold"
Case -1: MsgBox "Bold"
Case Else: MsgBox "Mixed bag"
End Select
lbl_Exit:
Exit Sub
End Sub
If you want to evaluated all paragraphs you can use:
Sub test2()
Dim oRng As Range
Dim lngIndex As Long
For lngIndex = 1 To ActiveDocument.Paragraphs.Count
Set oRng = ActiveDocument.Paragraphs(lngIndex).Range
oRng.Start = oRng.Start + 10
oRng.End = oRng.Start + 5
Select Case oRng.Font.Bold
Case 0: MsgBox "Paragrah " & lngIndex & " is Not bold"
Case -1: MsgBox "Paragrah " & lngIndex & " is Bold"
Case Else: MsgBox "Paragrah " & lngIndex & " is a mixed bag"
End Select
Next lngIndex
lbl_Exit:
Exit Sub
End Sub