Here is another way to ensure the user selects a block:
Private Const ERR_TYPE_MISMATCH As Long = 13
Private Const ERR_MISSED_PICK As Long = -2147352567
Sub test
On Error GoTo ERROR_HANDLER
Dim blockRef As AcadBlockReference
Dim varPt As Variant
ThisDrawing.Utility.GetEntity blockRef , varPt, "Select a block: "
Exit Sub
ERROR_HANDLER:
Select Case Err
Case ERR_TYPE_MISMATCH
ThisDrawing.Utility.Prompt "You may only select a block: "
Resume
Case ERR_MISSED_PICK
ThisDrawing.Utility.Prompt "You missed: "
Resume
Case Else
Err.Raise Err.Number, Err.Source, Err.Description, Err.HelpFile, Err.HelpContext
End Select
End Sub