| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| 3DEXPERIENCE Simulation Day |
Autor
|
Thema: VBA Teile in Baugruppe (903 mal gelesen)
|
darthkali Mitglied Konstrukteur Formenbau
Beiträge: 75 Registriert: 24.02.2010 Win 7 64Bit Solid Works 2016 Intel Xeon CPU E3-1240 v5 16GB RAm nvidia Quadro M2000 (4GB)
|
erstellt am: 15. Mrz. 2017 15:36 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, ich bin mal wieder auf der Suche nach einem VBA Code. Und zwar möchte ich einen Code schreiben, der mir allte Teile, die im Ordner sind mit denen vergleicht, die in der Baugruppe sind. Also benötige ich einen Code, der mir alle teile am besten in einem Array auflistet. Aber nur in SW selber. Wie ich die Teile aus dem ordner auslese, habe ich bereits herausgefunden. In der API habe ich bereits folgendes gefunden: "GetComponents Method" Jedoch bekomme ich da kein ergebnis. Vlt mache ich aber auch was falsch. Grüße Danny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nahe Ehrenmitglied
Beiträge: 1747 Registriert: 18.01.2001 arbeite mit: Dell Precision 7750 i7 2,6 GHz 6 Kerne 32GB RAM 512GB SSD NVIDIA Quadro RTX 4000 ------------------------ SWX-2020 SP5.0 EPDM ---------------- Windows 10 ---------------- VB.net VB VBA ein wenig Swift am Mac
|
erstellt am: 15. Mrz. 2017 16:33 <-- editieren / zitieren --> Unities abgeben: Nur für darthkali
Hallo Danny, Du schreibst, "Jedoch bekomme ich da kein ergebnis. Vlt mache ich aber auch was falsch." da Du Deinen Code nicht gepostet hast, wird es schwierig sein, Dir zu sagen, ob Du was falsch machst :-) Aber bei einer einfachen Baugruppe funktioniert, bei mir zumindest, der Code unten Sub main() Dim swApp As SldWorks.SldWorks Dim ss As SldWorks.AssemblyDoc Dim arr() As SldWorks.Component2 Dim n As Variant Set swApp = Application.SldWorks Set ss = swApp.ActiveDoc arr = ss.GetComponents(False) Debug.Print " -----------------------------" For Each n In arr Debug.Print n.Name2 Next End Sub ------------------ Grüße Heinz
[Diese Nachricht wurde von nahe am 15. Mrz. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Torsten Niemeier Ehrenmitglied V.I.P. h.c. Maschinenbau Ingenieur
Beiträge: 3682 Registriert: 21.06.2001 "ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform ** CSWP 04/2011 ** ** CSWE 08/2011 **
|
erstellt am: 15. Mrz. 2017 20:47 <-- editieren / zitieren --> Unities abgeben: Nur für darthkali
Hallo Heinz. Das funktioniert aber tatsächlich nur bei einer Baugruppe mit einer Ebene. Um sicherzugehen, sollte Danny wohl besser in der API-Hilfe nach 'Traverse Assembly at Component Level' suchen. Die Komponenten in ein (globales) Array zu packen, sollte nicht das größte Problem sein... Gruß, Torsten
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nahe Ehrenmitglied
Beiträge: 1747 Registriert: 18.01.2001 arbeite mit: Dell Precision 7750 i7 2,6 GHz 6 Kerne 32GB RAM 512GB SSD NVIDIA Quadro RTX 4000 ------------------------ SWX-2020 SP5.0 EPDM ---------------- Windows 10 ---------------- VB.net VB VBA ein wenig Swift am Mac
|
erstellt am: 16. Mrz. 2017 06:51 <-- editieren / zitieren --> Unities abgeben: Nur für darthkali
|
darthkali Mitglied Konstrukteur Formenbau
Beiträge: 75 Registriert: 24.02.2010 Win 7 64Bit Solid Works 2016 Intel Xeon CPU E3-1240 v5 16GB RAm nvidia Quadro M2000 (4GB)
|
erstellt am: 17. Mrz. 2017 12:46 <-- editieren / zitieren --> Unities abgeben:
|