rendered paste body(defun c:knr ( / blk2sel valfrom rngbgn rngend rnsel blkinc blkchgd blkcnt curatti curattv newval)
(setq blk2sel(getstring T "Name of block to renumber?"))
(setq valfrom(getstring "Difference [+]:"))
(setq rngbgn(getstring "Start at:"))
(setq rngend(getstring "End at:"))
(setq rnsel (ssget "x" (list (cons 0 "INSERT") (cons 2 blk2sel))))
(setq blkinc 0)
(setq blkchgd 0)
(setq blkcnt (1-(sslength rnsel)))
(while (<= blkinc blkcnt)
(setq curatti (entget(entnext(ssname rnsel blkinc))))
(setq curattv (cdr(assoc 1 curatti)))
(if (>= (atoi curattv)(atoi rngbgn))(
(if (<= (atoi curattv)(atoi rngend)) (
(setq newval (rtos(+ (atoi valfrom) (atoi curattv)) 2 0))
(entmod (subst (cons 1 newval) (assoc 1 curatti) curatti))
(setq blkchgd(1+ blkchgd))
))))
(setq blkinc (1+ blkinc))
)
(command "_.regen")
)