| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| CIDEON Whitepaper: Collaboration mit optimiertem Daten- und Projektmanagement, ein Whitepaper
|
Autor
|
Thema: 8 stellige Zahl soll 4stellig werden, wie? (413 mal gelesen)
|
OtzeMachEd Mitglied Bauzeichner & CAD Systembetreuer
Beiträge: 201 Registriert: 30.05.2003 WIN XP Prof. ACAD 2010 ADT 2010 Express Tools
|
erstellt am: 09. Jan. 2004 13:07 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe einige tausend Zahlen die 8 -stellig sind. Diese sollen nun 4-stellig werden. Und zwar sollen die ersten 4 Stellen wegfallen, z.B. soll aus 85218173 jetzt 8173 werden. Die Zahlen sind alle ohne Komma. Hat jemand eine Idee, wie ich das schnell hinbekomme? Danke für Hilfe!! ------------------ Mit freundlichen Grüßen Otze Mach Ed Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 09. Jan. 2004 13:12 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
.. als Text in der Zeichnung? ... als Exel-Tabelle ? Bitte werde mal genauer! Sonst kann die antwort auch bloß heißen : Bei oft wiederkehrenden rechentechnischen Aufgaben lohnt es sich über ein Programm nachzudenken.. Gruß Thomas ------------------ Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadwomen Ehrenmitglied V.I.P. h.c. Mädchen für fast alles
Beiträge: 3067 Registriert: 26.08.2002 ACAD R11 - 2022 (Plant3D) AVIS ACAD LT 2013- 2021 ZWCAD 2015 Versuch "nun ja" [s]History P3D 2012/(13) SP und Hotfix([/s]<P> Windows 10 / 64 Bit Xeon CPU 3.5GHz 16GB Ram NVIDIA Quadro P2000 3x Dell TV100 88P Monitore
|
erstellt am: 09. Jan. 2004 13:14 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
|
OtzeMachEd Mitglied Bauzeichner & CAD Systembetreuer
Beiträge: 201 Registriert: 30.05.2003 WIN XP Prof. ACAD 2010 ADT 2010 Express Tools
|
erstellt am: 09. Jan. 2004 13:20 <-- editieren / zitieren --> Unities abgeben:
|
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 09. Jan. 2004 13:38 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
geht mit einem kleinem lisp das sucht alle texte in der zeichnung , und schneidet sie auf die letzten 4 stellen ab (defun c:SplitText (/) (setq ss (ssget "X" (list (cons 0 "TEXT"))) i 0) (repeat (sslength ss) (setq ename (ssname ss i) i (1+ i) edate (entget ename) text (cdr (assoc 1 edate)) ) (entmod (subst (cons 1 (padl text 4 " ")) (assoc 1 edate) edate)) ) ) ;------------------------------------------------------------------------------ ; Auffüllen einer Zeichenkette mit Füllstring (links) ; z.B. " a" <-- (padl "a" 4 " ") ; ; Ist die Zeichenkette s größer als die Länge l angibt, wird nicht ; aufgefüllt, sonder links abgeschnitten. ; z.B. "efgh" <-- (padr "abcdefgh" 4 " ") ;------------------------------------------------------------------------------ ; ->> s String (z.B. "a") ; ->> l Länge (z.B. 4) ; ->> z Füllstring (z.B. " ") ;------------------------------------------------------------------------------ (defun Padl (s l z / ) (if (not s) (setq s "")) (while (< (strlen s) l) (setq s (strcat z s)) ) (substr s (- (1+ (strlen s)) l)) ) ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 09. Jan. 2004 13:44 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
|
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 09. Jan. 2004 13:54 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
gar nicht foreach funktioniert nur mit listen und nicht mit einem auswahlsatz du musst tatsächlich eine repeat schleife drüber proggen (setq i 0) ' zähler (repeat (sslength ss) ' schleife mit so vielen durchläufen wie ss-inhalt (setq ename (ssname ss i)) ' i´ten elemntname holen (setq i (1+ i)) ' zähler erhöhen ) ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 09. Jan. 2004 14:09 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
|
Proxy Ehrenmitglied Stateless-DHCP v6-Paketfragmentierer
Beiträge: 1629 Registriert: 13.11.2003 Tastaturen, Mäuse, Pladden, Monitore, ...
|
erstellt am: 10. Jan. 2004 00:00 <-- editieren / zitieren --> Unities abgeben: Nur für OtzeMachEd
mit VBA würde ich es mit verschleiftem filein left( string, x) bzw right( string, x) einfach realisieren. Leider ist die Art der Listenspeicherung (Exel, reines-txt, xml, dwg/dxf (dtext,mtext) ...mir unbekannt daher ist eine schnelle/bessere Lösung kaum machbar. ------------------ (entmake (entget (entlast))) | Die Pro-Version auf Anfrage erhältlich. "Lisp?!?! Why the Hell did you pick the most arcane, obscure, and hopelessly-rooted-in-the-computer-science-department language in the world for an AutoCAD programming language?" Read the whole story: The Autodesk File Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
OtzeMachEd Mitglied Bauzeichner & CAD Systembetreuer
Beiträge: 201 Registriert: 30.05.2003 WIN XP Prof. ACAD 2010 ADT 2010 Express Tools
|
erstellt am: 20. Jan. 2004 13:37 <-- editieren / zitieren --> Unities abgeben:
|