Determine whether the selection or range is at the start of a paragraph

Or of the current table, or section – or of any object that has a Range property

Article contributed by Bill Coan

For paragraphs:

If Selection.Start = Selection.Paragraphs(1).Range.Start Then
    MsgBox "At start of a paragraph"
    MsgBox "Not at start of a paragraph"
End If

For Ranges, substitute the range for the selection in the above code.  For sections use Selection.Sections(1); for tables use Selection.Tables(1) – etc.