| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | |  | Autodesk AutoCAD Mechanical: Grundlagen - Online, ein Seminar am 02.06.2025
|
Autor
|
Thema: Mass-Reihe nach Excel auslesen (1209 mal gelesen)
|
marc1303 Mitglied

 Beiträge: 80 Registriert: 17.03.2003 Intel Core i7 960 3.2 MHz, Win 7 Pro, 12 GB RAM, Nvidia Quadro FX 1800,AutoCAD 2010 SP1 mit Metallbaulösung Athena 2010
|
erstellt am: 08. Mrz. 2005 10:39 <-- editieren / zitieren --> Unities abgeben:         
Hallo Newsgroupers Ich habe folgendes Problem. Ich bemasse in AutoCAD mit Basisbemassung bzw. Koordinatenbemassung. Diese Werte muss ich anschliessend manuell nach Excel übertragen. Kennt jemand ein Tool (Lisp oder ARX) welches diesen Vorgang automatisiert? Bemassen, Tool wählen, gewünschte Masse wählen, Auswahl beenden und in Excel einfügen. Ich hab wirklich sehr wenig Ahnung von Programmierung. Lacht mich bitte nicht aus, wenn meine Idee total abwegig ist. Ich wäre auch bereit etwas dafür zu bezahlen. Es kommt immer wieder vor, dass ich solche Werte nach Excel übernehmen muss. Gruss Marc [Diese Nachricht wurde von marc1303 am 08. Mrz. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Roland768 Mitglied
 Beiträge: 2 Registriert: 08.03.2005 AutoCad LT 2000
|
erstellt am: 08. Mrz. 2005 11:18 <-- editieren / zitieren --> Unities abgeben:          Nur für marc1303
Hallo marc 1303, vielleicht ist das Problem leichter mit Excel zu lösen: Befehl: Abfrage/auflisten, Objekte wählen, Bericht als Text in Excel einfügen und diesen Text mit Textfunktionen sezieren (gewünschte Information herauspolken), evtl mit Autofilter zusammenfassen, rüberkopieren in neue Tabelle, fertig. Wenn man das Vorgehen erst mal kennt, ist es egal, ob pro Durchgang 5 oder 5000 Objekte dabei sind. Poste mal eine Abfrageliste und benenne die Informationen, die du daraus brauchst, dann kann ich die notwendigen Textfunktionen genauer beschreiben. Lacht mich ruhig aus, aber ich kenne mich mit Excel nun mal recht gut und mit ACad recht wenig aus, deswegen lese ich ja auch dieses Forum. Gruß Roland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc1303 Mitglied

 Beiträge: 80 Registriert: 17.03.2003 Intel Core i7 960 3.2 MHz, Win 7 Pro, 12 GB RAM, Nvidia Quadro FX 1800,AutoCAD 2010 SP1 mit Metallbaulösung Athena 2010
|
erstellt am: 08. Mrz. 2005 11:22 <-- editieren / zitieren --> Unities abgeben:         
Hallo Roland768 Hier die Abfrage-Liste eines einzelnen Bemassungspunktes. In diese Fall hier müsste ich den Y-Wert (1781) in Excel übernehmen: BEMASSUNG Layer: "MASZE" Bereich: Modellbereich Referenz = CE3 assoziativ: nein Typ: Y-Achse zu bearbeitendes Objekt Definitionspunkt: X= -9.3 Y= 1781.0 Z= 0.0 Führung Definitionspunkt: X= -100.4 Y= 1781.0 Z= 0.0 BKS Funktion Definitionspunkt: X= 0.0 Y= 0.0 Z= 0.0 Vorgabe Textposition: X= -150.4 Y= 1811.5 Z= 0.0 Vorgabetext Bemaßungsstil: "ISO-25" Bemaßungsstil überschreibt: DIMDLI 10.0 DIMRND 0.0 DIMSCALE 7.5 DIMTDEC 1 DIMTXT 6.0
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd P Ehrenmitglied V.I.P. h.c. cook-general

 Beiträge: 3424 Registriert: 07.06.2001 W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365
|
erstellt am: 08. Mrz. 2005 11:24 <-- editieren / zitieren --> Unities abgeben:          Nur für marc1303
Servus Wenn du die Punkte Selbst erstellst, dann verwende einen Block mit Attribut. die Koordinaten der Einfügepunkte kann man dann mit Attribustextraktion "_eattext" in eine CSV speichern. ------------------ Warum Einfach es geht auch kompliziert schöne Grüsse aus der Steiermark Bernd P. Bitte Supportangaben eintragen, warum siehst du hier Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proxy Ehrenmitglied Stateless-DHCP v6-Paketfragmentierer
    
 Beiträge: 1629 Registriert: 13.11.2003 Tastaturen, Mäuse, Pladden, Monitore, ...
|
erstellt am: 08. Mrz. 2005 12:50 <-- editieren / zitieren --> Unities abgeben:          Nur für marc1303
Mit VBa könnte es ungefähr so aussehen: Code:
Sub DimValue2Excel() Dim doc As AcadDocument Dim sel As AcadSelectionSet Dim mode As Integer Dim groupCode As Variant, dataCode As Variant Dim gpCode(0) As Integer Dim dataValue(0) As Variant Dim i As Long Dim cad As Object Dim acad As AcadApplication Dim autocad_gestartet As Boolean autocad_gestartet = True On Error Resume Next Set cad = GetObject(, "AutoCAD.Application") If Err.Number <> 0 Then Err.Clear MsgBox "AutoCAD ist nicht gestartet", vbOKOnly, "Fehler" Exit Sub End If Set acad = cad MsgBox ("TEST " & acad.ActiveDocument.Name & " "), vbInformation If IsNull(acad.ActiveDocument) Then MsgBox "Keine Zeichnung geöffnet", vbOKOnly, "Fehler" Exit Sub End If gpCode(0) = 0 dataValue(0) = "DIMENSION" groupCode = gpCode dataCode = dataValue mode = acSelectionSetAll Set sel = acad.ActiveDocument.SelectionSets.Add("SSET2") sel.Select mode, , , groupCode, dataCode Range("A1").Select ActiveCell.FormulaR1C1 = "Messwert" Range("B1").Select ActiveCell.FormulaR1C1 = "ID" Range("C1").Select ActiveCell.FormulaR1C1 = "ObjektTyp" Range("D1").Select ActiveCell.FormulaR1C1 = "Layer" Range("E1").Select ActiveCell.FormulaR1C1 = "XXX" If sel.Count > 0 Then For i = 0 To sel.Count - 1 Range("A" + Trim(Str(i + 2))).Select ActiveCell.FormulaR1C1 = sel.Item(i).Measurement Range("B" + Trim(Str(i + 2))).Select ActiveCell.FormulaR1C1 = sel.Item(i).Handle Range("C" + Trim(Str(i + 2))).Select ActiveCell.FormulaR1C1 = sel.Item(i).ObjectName Range("D" + Trim(Str(i + 2))).Select ActiveCell.FormulaR1C1 = sel.Item(i).Layer Range("E" + Trim(Str(i + 2))).Select ActiveCell.FormulaR1C1 = sel.Item(i).OwnerID Next i End If sel.Clear sel.Delete End Sub
Zum Code siehe Post von Startrek. ------------------ "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 ca. 890 Seiten | 7500 KB PDF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Roland768 Mitglied
 Beiträge: 2 Registriert: 08.03.2005 AutoCad LT 2000
|
erstellt am: 08. Mrz. 2005 13:10 <-- editieren / zitieren --> Unities abgeben:          Nur für marc1303
Hallo Marc, wenn der Text in der ersten Spalte steht, muss in der zweiten Spalte folgende Formel stehen: =WENN(LINKS(ZS(-1);7)="Führung";WERT(WECHSELN(TEIL(ZS(-1);SUCHEN("Y";ZS(-1))+4;6);".";","));"") oder in der A1-Darstellung: =WENN(LINKS(A38;7)="Führung";WERT(WECHSELN(TEIL(A38;SUCHEN("Y";A38)+4;6);".";","));"") Ein Problem ist allerdings, dass vermutlich vor dem Wort Führung noch Leerzeichen sind, die beim cut and paste in das Posting verlorengegangen sind. Entweder setzt man die Leerzeichen mit vor das Wort Führung in die "" (und muß natürlich auch die Anzahl der Zeichen (7) entsprechend erhöhen, oder man läßt sich die Zeile erst per Autofilter anzeigen (ganzen Bereich markieren, Daten/Filter/Autofilter wählen, dann in dem Klappfeld mit dem Pfeil Benutzerdefiniert, in der Dialogbox links "enthält" auswählen, rechts "Führung" eintragen, OK, dann sind nur noch die Zeilen mit "Führung" zu sehen, und beim kopieren und einfügen der Formel wird diese auch nur in die sichtbaren Felder eingetragen. Für diesen Fall muß die Formel so aussehen: =WECHSELN(WERT(TEIL(ZS(-1);SUCHEN("Y";ZS(-1))+4;6));".";",") oder =WECHSELN(WERT(TEIL(A48;SUCHEN("Y";A48)+4;6));".";",") So findet die Formel dann eben jeden y-Wert. Eins noch: in der A1-Darstellung muß man natürlich die Zeilennummer anpassen (statt der 38 bzw. der 48 die Zeilennummer, in der die Formel steht. Ich arbeite immer mit der Z1S1-Darstellung, da kann man die Formel einfach hineinkopieren. Ach ja, um die Zahlen vernünftig weiterzubearbeiten, sollte man den Bereich mit den eben errechneten Werten markieren, Bearbeiten/Kopieren und dann in einer neuen Tabelle Bearbeiten/Inhalte einfügen (Werte ankreuzen) wählen. Dann hat man die berechneten Zahlen statt der Formel in der Zelle stehen. Viel Erfolg
Roland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |