| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: text aus dwg exportieren (1940 mal gelesen)
|
sleepi Mitglied Techniker
Beiträge: 162 Registriert: 14.01.2003 WinXP (SP2), P4 3Ghz, 2 GB, 200gb, 256mb garfik AutoCAD 2006, HP800 + HP1050 + Canon W8400
|
erstellt am: 08. Mrz. 2005 20:48 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4171 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 08. Mrz. 2005 20:51 <-- editieren / zitieren --> Unities abgeben: Nur für sleepi
ja Grüße Holger Etwas konkreter solltest du schon werden. Vielleicht hilft dir aber das schon:
Code:
(defun c:Text->Excel (/ aws xls-file) (setq aws (ssget "_X" '((0 . "*TEXT")(8 . "LAYERNAME"))) xls-file (open "c:\\KreisMPT.xls" "w")) (mapcar '(lambda (C / PT) (princ (cdr(assoc 1 C)) xls-file) (princ "\n" xls-file) ) (if aws (mapcar 'entget(bau_elemli aws))) ) (close xls-file) ) (defun bau_elemli (asatz / n elemli) (setq n 0) (repeat (sslength asatz) (setq elemli (cons (ssname asatz n) elemli) n (1+ n) ) ;_ end of setq ) ;_ end of repeat elemli )
------------------ Holger Brischke CAD on demand GmbH Autodesk User Group Central Europe Individuelle Lösungen von Heute auf Morgen. AUGCE Manager Deutschland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Mitglied Architekt
Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 08. Mrz. 2005 21:53 <-- editieren / zitieren --> Unities abgeben: Nur für sleepi
auch noch ein Vorschlag, Ja die lieben 'MTexte' machen einem hier das Leben schwer, habs mal der einfachheit halber simply in ne txt geschrieben, mit nem $ als Trenner, muss man dann halt unter Excel in Zeilenumbrüche ersetzen oder Daten > Text in Spalten especially für MTexte freilich ;-) Alle andren Formatierungen ebenso aussen vor, das wird sonst bissel heftiger [isMirSchlecht;-)] ... lg Nancy
Code: Sub xx() Dim i&, s$, arr With ThisDrawing.ModelSpace Open "d:\textit.txt" For Output As #1 For i = 0 To .Count - 1 If TypeOf .Item(i) Is AcadMText Then arr = Split(.Item(i).TextString, "\P") s = Join(arr, "$") Print #1, s ElseIf TypeOf .Item(i) Is AcadText Then Print #1, .Item(i).TextString End If Next Close #1 End With End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
sleepi Mitglied Techniker
Beiträge: 162 Registriert: 14.01.2003 WinXP (SP2), P4 3Ghz, 2 GB, 200gb, 256mb garfik AutoCAD 2006, HP800 + HP1050 + Canon W8400
|
erstellt am: 09. Mrz. 2005 08:41 <-- editieren / zitieren --> Unities abgeben:
hallo, vielen dank für eure möglichkeiten bei der lsp variante ... ist die excel unter c: leer muß man da auf etwas bestimmtes achten? die makro variante habe ich eingefügt und auf ausführen geclickt was genau sollte dan passieren? grüße sleepi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4171 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 09. Mrz. 2005 08:44 <-- editieren / zitieren --> Unities abgeben: Nur für sleepi
|
sleepi Mitglied Techniker
Beiträge: 162 Registriert: 14.01.2003 WinXP (SP2), P4 3Ghz, 2 GB, 200gb, 256mb garfik AutoCAD 2006, HP800 + HP1050 + Canon W8400
|
erstellt am: 09. Mrz. 2005 09:04 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4171 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 09. Mrz. 2005 09:07 <-- editieren / zitieren --> Unities abgeben: Nur für sleepi
Hallo Sleepi, du kannst anstelle des LAYERNAME auch mit Wildcards arbeiten. Verschiedene Muster werden durch , (Komma) getrennt. Bsp: "*"; alle Layer "#*"; alle Layer, die mit einer Zahl beginnen "#*,@#*"; Alle Layer, die mit einer Zahl oder einem Buchstaben und einer Zahl beginnen. Schau mal in der Lisp-Hilfe unter dem Stichwort wcmatch. Grüße Holger ------------------ Holger Brischke CAD on demand GmbH Autodesk User Group Central Europe Individuelle Lösungen von Heute auf Morgen. AUGCE Manager Deutschland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |