Thanks, Lee. I'll give it a try.
I found this code and modified it to simply perform a vla-update on all dimensions in the selected blocks. The original appears to run properly, but the dimensions do not update.
;; https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/color-of-dimensions-in-a-block-need-modification-in-lisp-code/td-p/8322296
;;
(defun c:RefreshBLkDim (/ *error* col ss i) ; modified from c:ColorDimInBlock
(vl-load-com)
(or *acad* (setq *acad* (vlax-get-acad-object)))
(or *acdoc* (setq *acdoc* (vla-get-ActiveDocument *acad*)))
(or *blocks* (setq *blocks* (vla-get-Blocks *acdoc*)))
(defun *error* (msg)
(and msg
(/= (strcase msg) "FUNCTION CANCELLED")
(princ (strcat "\nError: " msg))
)
(vla-EndUndoMark *acdoc*)
(princ)
)
(if
(and
;(setq col (acad_colordlg 256))
(ssget '((0 . "INSERT")))
)
(progn
(vlax-for br (setq ss (vla-get-ActiveSelectionSet *acdoc*))
(or (member (vla-get-Name br) lst)
(setq lst (cons (vla-get-Name br) lst))
)
)
(vla-Delete ss)
(foreach n lst
(vlax-for obj (vla-Item *blocks* n)
(if (member (vla-get-ObjectName obj) '("AcDbAlignedDimension" "AcDbRotatedDimension"))
(vla-update obj)
;(vla-put-Color obj col)
)
)
)
(vla-regen *acdoc* acAllViewports)
)
)
(*error* nil)
)