Servus Beisammen,
bin etwas unerfahren wie alle am Anfang und möchte gerne ein kleines Lisp-Programm verwenden. 
Verändert habe ich dieses:
(defun c:ADD ( / Z1 Z2 OBJEKT OBJEKTDATEN )
  (if (setq Z1(getreal "\nZahl eingeben: "))
    (while (setq OBJEKT (car(entsel "\nText wählen : ")))
      (setq OBJEKTDATEN(entget OBJEKT '("*")))
      (if (member(cdr(assoc 0 OBJEKTDATEN)) '("TEXT" "MTEXT"))
        (progn
          (setq Z2 (atof (cdr(assoc 1 OBJEKTDATEN))))
          (setq OBJEKTDATEN (subst(cons  1 (rtos (+ Z1 Z2) 2 2))
                                  (assoc 1 OBJEKTDATEN)
                                  OBJEKTDATEN
                            )                 
          )         
          (entmod OBJEKTDATEN)
          (command "_regen")
        )
      )
    )       
  ) 
)
(hat super funktioniert...)
zu diesem:
(defun c:ADD ( / Z1 Z2 Z3 OBJEKT OBJEKTDATEN )
  (if (setq Z1(getreal "\nZahl eingeben: "))
    (while (setq OBJEKT (car(entsel "\nText wählen : ")))
      (setq OBJEKTDATEN(entget OBJEKT '("*")))
      (if (member(cdr(assoc 0 OBJEKTDATEN)) '("TEXT" "MTEXT"))
        (progn
          (setq Z3 (atof (cdr(assoc 1 OBJEKTDATEN))))
          (setq OBJEKTDATEN (subst(cons  1 (rtos (+ Z1 Z2 Z3) 3 3 3))
                                  (assoc 1 OBJEKTDATEN)
                                  OBJEKTDATEN
                            )                 
          )         
          (entmod OBJEKTDATEN)
          (command "_regen")
        )
      )
    )       
  ) 
)
in der Hoffnung, dass es nach der Addition nicht mehr auf 2 Stellen sondern auf 3 Stellen nach dem Komma aufrunden täte. Tut´s aber nicht....
Wer kennt Rat?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP