(defun C:rotation_bloks (/ block-list n rotation ssnabor vla-blok)
  ; Поворот выбранных блоков на заданный угол.
  ; Выбрать те блоки которые необходимо повернуть,
  ; запустить команду rotation_bloks,
  ; ввести на сколько градусов необходимо повернуть блоки.
  
  (setq ssnabor (ssget '((0 . "INSERT"))))
  (setq n 0)
  (if ssnabor
    (if(setq rotation (getreal "\nНа сколько градусов повернуть выбранные блоки?:"))
      (progn
	(repeat (sslength ssnabor)
	  (setq block-list (append block-list (list(ssname ssnabor n))))
	  (setq n (1+ n)))
	(foreach x block-list
	  (setq vla-blok (vlax-ename->vla-object x))
	  (vla-put-rotation vla-blok (+ (vla-get-rotation vla-blok) (*(/ pi 180.0)rotation)))
	  )
	)
      )
    (princ "\nОшибка. Ничего не выбранно.")
    )
  (princ)
  )