| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| 3DEXPERIENCE Conference 2024 | München |
Autor
|
Thema: VBA von Stückliste auf Teil abspringen (675 mal gelesen)
|
Christoph Weise Mitglied Technischer Produktdesigner / Konstruktion / CAD-Admin
Beiträge: 204 Registriert: 22.03.2015 Dell 3650 Intel I7 11700k 32 GB RAM Nvidia RTX A4000 16GB Win 10 22H2 64-bit SolidWorks 2022SP5 QuickPress 6.3.3 PortaX 2.27 SAP ERP 6.0
|
erstellt am: 28. Jul. 2021 10:41 <-- editieren / zitieren --> Unities abgeben:
Hallo Cad'ler, ich hatte früher schonmal das besstreben die Zeichnungen nach Stückliste sortiert auszudrucken. Damals Ist es in dem bekannten Makro "Assambly Print Drawings" geendet. Vielen Dank nochmals dafür. Nun ist das Thema aber wieder aktuell, da uns inzwischen eine Sortierung nach Namen nicht mehr ausreicht. Hauptgrund ist hier, das die Dokumente auch in einer PDF zur Baugruppe zusammengefasst werden. Hier lässt sich der letzte Rest einfach schwerer und aufwändiger nach Reihnfolge sortieren als ein Papier-Ordner. Die Stückliste auslesen ist inzwischen kein Problem mehr, allerdings kann ich aufgrund der Daten in der Stückliste nicht auf den Dateinamen bzw. den Speicherort schließen. Eine Möglichkeit ist, alle Dokumente die in der jeweiligen Baugruppe eingebaut sind nach den richtigen Eigenschaften zu durchsuchen -> Verdammt aufwändig da es auch Dokumente mit verschiedenen Konfigurationen gibt.Außerdem ergibt sich hier bei Großen Baugruppen eine sehr lange Laufzeit Die andere Möglichkeit ist , von der Stückliste direkt in auf das jeweilige Dokument abzuspringen bzw. davon auszulesen. Händisch gibt es die Funktion mit Rechtsklick auf die Position in der Stückliste -> Öffnen XXXX. Im VBA hab ich leider die Funktion noch nicht finden können. Auch der Makrorecorder hat mir bis jetzt nicht weitergeholfen. Auf die Stückliste greife ich über SldWorks.TableAnnotation zu. Gruß Christoph ------------------ Wer einen Fehler findet darf ihn behalten, wer zwei findet kann beide behalten, ab fünf Fehler gibs Rabatt :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Maler Mitglied Konstrukteur / CAD-Admin / Mädchen für alles
Beiträge: 720 Registriert: 17.01.2007 SWX 2019 SP5 AutoCAD 2019 Win 10 pro 64 bit Intel(R) Xeon(R) CPU E5-1650 v4 @ 3.60GHz 64GB RAM Nvidia Quadro M5000 SWx EPDM
|
erstellt am: 28. Jul. 2021 14:56 <-- editieren / zitieren --> Unities abgeben: Nur für Christoph Weise
Hallo Christoph, ich füge beim Stücklistenauslesen automatisch 2 Spalten mit Ordnername und Dateiname an die Stückliste an und lösche die danach wieder: Code: boolstatus = TA.InsertColumn2(swTableItemInsertPosition_Last, 0, "SW-Ordnername(Folder Name)", swInsertColumn_DefaultWidth) boolstatus = TA.SetColumnType(TA.ColumnCount - 1, swWeldTableColumnType_CustomProperty) boolstatus = TA.SetColumnCustomProperty(TA.ColumnCount - 1, "SW-Ordnername(Folder Name)") ' ' ' boolstatus = TA.DeleteColumn(TA.ColumnCount - 1)
bzw. "SW-Dateiname(File Name)" für den Dateinamen. TA ist dabei die TableAnnotation. Damit hast du ddann den Pfad zur jew. Datei. Gruß, Jens Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Christoph Weise Mitglied Technischer Produktdesigner / Konstruktion / CAD-Admin
Beiträge: 204 Registriert: 22.03.2015 Dell 3650 Intel I7 11700k 32 GB RAM Nvidia RTX A4000 16GB Win 10 22H2 64-bit SolidWorks 2022SP5 QuickPress 6.3.3 PortaX 2.27 SAP ERP 6.0
|
erstellt am: 28. Jul. 2021 15:23 <-- editieren / zitieren --> Unities abgeben:
Hallo Jens, Das wäre dann der Weg Nr 3....und der einfachste. Super vielen Dank Gruß Christoph ------------------ Wer einen Fehler findet darf ihn behalten, wer zwei findet kann beide behalten, ab fünf Fehler gibs Rabatt :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 30. Jul. 2021 09:00 <-- editieren / zitieren --> Unities abgeben: Nur für Christoph Weise
Hallo! Wenn Du den Namen des Dokuments weißt, dann kannst Du versuchen, es auszuwählen und mit Part.OpenCompFile zu öffnen. So hatte ich sowas früher gemacht (der Befehl ist jetzt als obsolet gekennzeichnet). Das klappt, wenn das Teil mit im Speicher ist i.d.R., auch wenn es in anderen Ordnern liegt... VG Lutz Federbusch ------------------ Lutz Federbusch Mein Gästebuch Der Mensch, Herr oder Sklave der Technik? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Christoph Weise Mitglied Technischer Produktdesigner / Konstruktion / CAD-Admin
Beiträge: 204 Registriert: 22.03.2015 Dell 3650 Intel I7 11700k 32 GB RAM Nvidia RTX A4000 16GB Win 10 22H2 64-bit SolidWorks 2022SP5 QuickPress 6.3.3 PortaX 2.27 SAP ERP 6.0
|
erstellt am: 02. Aug. 2021 09:21 <-- editieren / zitieren --> Unities abgeben:
Hallo Lutz mein Problem war das ich eben nicht wusste wie meine Dokument heißt. Ich hatte zuvor nur Eingenschaften in der Stückliste stehen , mit denen keine direkten Rückschluss auf den Dateinamen bzw. den Speicherort möglich war. Die Zeichnung selbst öffne ich nun mit OpenDoc6, den ich habe nun den kompletten Pfad jeder Zeichnung. Ist die Zeichnung schon geöffnet, wird sie mit ActivateDoc in den Vordergrund geholt.
Das Problem am Befehl OpenCompFile ist das dieser Befehl nur die schon im Speicher geladenen Bauteile öffnet (soweit ich das verstanden habe). Da ich aber die Zeichnung direkt öffne, ist diese oft nicht im Hintergrund geladen. Außerdem weiß ich nicht wie der Befehl auf "Reduziert" geladene Bauteile reagiert. Gruß Christoph ------------------ Wer einen Fehler findet darf ihn behalten, wer zwei findet kann beide behalten, ab fünf Fehler gibs Rabatt :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 02. Aug. 2021 09:47 <-- editieren / zitieren --> Unities abgeben: Nur für Christoph Weise
|