Beste mesen.
Ik heb een heleboel putnummers.
Het enige wat ik wil is dat er een underscore op de 3e positie komt.
Bijv, 582003 en 58002 moet worden 58_2003 en 58_003
heeft iemand een oplossing?
Ik kan niet 58 vervangen door 58_ omdat er ook een nummer 582058 bestaat en dan wordt het 58_20_58_
Een tussen liggend alternatief is dat je 582 vervangt door 58_2. dat moet je dan we 10 keer doen. Voor ieder cijfer van 0 t/m 9 op de 3e positie dus.
Michel
Hier een lisp die doet wat je vraagt voor dtext:
(defun c:text3pos_ (/ sset e o i a b )
(vl-load-com)
(setq sset (ssget)
i 0
) ;_ end of setq
(repeat (sslength sset)
(setq e (ssname sset i)
i (1+ i)
) ;_ end of setq
(setq o (vlax-ename->vla-object e))
(if (= (vla-get-ObjectName o) "AcDbText")
(progn
(setq a (substr (vla-get-textstring o) 1 2))
(setq b (substr (vla-get-textstring o) 3))
(vla-put-textstring o (strcat a "_" b))
)
) ;_ end of if
) ;_ end of repeat
;(princ (strcat "\n" (itoa i) " wipeouts verwijderd."))
(princ)
) ;_ end of defun
Je kunt het starten door: text3pos_
de lisp is wat ik bedoel, maar hij geeft helaas een melding fout active x bij het laden dll bestand.
Citaat van: designer68 op zo 01 05 2011, 16:31:37
de lisp is wat ik bedoel, maar hij geeft helaas een melding fout active x bij het laden dll bestand.
Kun je wel andere lisp's uitvoeren?
Andere lisp routines werken wel, maar deze doet het niet momenteel.
Hij laadt hem wel maar er gebeurt niks.
Zou iemand anders hem even kunnen testen?
:vreegoe: Ik heb hem even getest en hij werkt probleemloos (Civil3D 2011, windows XP)
Reimer
Zelf werk ik met Map3D 2004 en Map3d2011
Hier werkt hij niet in helaas.
Citaat van: designer68 op ma 02 05 2011, 07:52:44
Zelf werk ik met Map3D 2004 en Map3d2011
Hier werkt hij niet in helaas.
Heb je het commando: "TEXT3POS_" in getypt? (vergeet de "_" niet, type na het laden "TEXT3" en druk dan de [Tab] toets in totdat je het juiste command vind)
Eddy Nu werkt het super.
Allen bedankt voor jullie inbreng.
Wou dat ik zelf routines kon maken.
Citaat van: designer68 op zo 01 05 2011, 16:31:37
de lisp is wat ik bedoel, maar hij geeft helaas een melding fout active x bij het laden dll bestand.
Hoe zit het nu met deze foutmelding?
de foutmelding wordt niet meer gegeven, dit is prima in orde nu.
Thanxs