The simple answer is its a DYNAMIC block not a normal block. Try this it will return the current value of "Visibilty1" if you stretch the block and just paste last line it will reflect the block changing.
Code:
; Code by www.Lee-mac.com get dynamic block property
(defun LM:getdynpropvalue ( blk prp )
(setq prp (strcase prp))
(vl-some '(lambda ( x ) (if (= prp (strcase (vla-get-propertyname x))) (vlax-get x 'value)))
(vlax-invoke blk 'getdynamicblockproperties)
)
)
(setq obj (vlax-ename->vla-object (car (entsel "\nPick a block"))))
;(setq val (LM:getdynpropvalue obj "Visibility1" ))
(alert (strcat "Id is = " (LM:getdynpropvalue obj "Visibility1" )))