Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Stückliste durch Macro erstellen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
Autor Thema:  Stückliste durch Macro erstellen (2382 mal gelesen)
Joker15
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Joker15 an!   Senden Sie eine Private Message an Joker15  Schreiben Sie einen Gästebucheintrag für Joker15

Beiträge: 22
Registriert: 09.06.2015

SolidWorks 2013

erstellt am: 28. Aug. 2015 11:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Bild1.JPG


Bild2.JPG

 
Hallo,
ich erstelle momentan durch folgenden Code eine Zuschnittsstückliste, leider würde ich gerne in der "Teilekonfigurationsgruppierung" die Einstellung auf "Alle Konfigurationen desselben Teils als ein Element anzeigen" stellen. Gibt es hierfür evtl. einen anderen oder zusätzlichen Befehl?


Code:
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim swBOMTable As Object

Sub main()

Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc

Dim swActiveView As Object

Set swActiveView = Part.ActiveDrawingView

Set swBOMTable = swActiveView.InsertBomTable4(False, 0, 0, swBOMConfigurationAnchorType_e.swBOMConfigurationAnchor_TopLeft, swBomType_e.swBomType_Indented, "Standard", "C:\Users\Luithardt\Documents\TESTStückliste.sldbomtbt", False, swBomType_e.swBomType_Indented, True)
End Sub


Zudem würde ich die einzelnen Bauteile im Anschluss gerne noch Auflösen, sodass aus der Stückliste in Bild1 eine Stückliste wie in Bild2 wird, auch hierfür finde ich keinen Befehl!

Gruß Joker!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Joker15
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Joker15 an!   Senden Sie eine Private Message an Joker15  Schreiben Sie einen Gästebucheintrag für Joker15

Beiträge: 22
Registriert: 09.06.2015

SolidWorks 2013

erstellt am: 28. Aug. 2015 14:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ok,
das auflösen hab ich über die fett markierte Whileschleife nun hinbekommen!

Code:
Sub main()

Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
i = 1

Dim swActiveView As Object

Set swActiveView = Part.ActiveDrawingView

Set swBOMTable = swActiveView.InsertBomTable4(False, 0, 0, swBOMConfigurationAnchorType_e.swBOMConfigurationAnchor_TopLeft, swBomType_e.swBomType_Indented, "Standard", "C:\Users\Luithardt\Documents\TESTStückliste.sldbomtbt", False, swBomType_e.swBomType_Indented, True)


totrows = swBOMTable.RowCount
Debug.Print "Reihen " & totrows


Do While i <= (totrows - 1)
Debug.Print "Reihe " & i

boolstatus = swBOMTable.Dissolve(i)
totrows = swBOMTable.RowCount
i = i + 1
Loop


End Sub


Gruß Joker

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



Sehen Sie sich das Profil von StefanBerlitz an!   Senden Sie eine Private Message an StefanBerlitz  Schreiben Sie einen Gästebucheintrag für StefanBerlitz

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 31. Aug. 2015 08:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Joker15 10 Unities + Antwort hilfreich


28662_api-bom-grouping.png

 
Hallo Joker15,

versuch mal die Methode BomFeature.PartConfiguratio nGrouping

Ich geh bei der Suche nach solchen API Calls so vor: ich stell mein SolidWorks um auf englisch, gehe interaktiv zu der Funktion und schaue mich dann nach Stichworten um, die ich in der API Hilfe in der Suchzeile eingeben kann, hier "part configuration grouping" (siehe Bild).

In der Regel kommt man so relativ schnell zu einem brauchbaren Ergebnis oder wird zumindest auf die richtige Fährte gesetzt.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Spirou85
Mitglied
Konstruktuer und CAD-Betreuer


Sehen Sie sich das Profil von Spirou85 an!   Senden Sie eine Private Message an Spirou85  Schreiben Sie einen Gästebucheintrag für Spirou85

Beiträge: 70
Registriert: 01.12.2014

HP ZBook 15 G5
Intel Xeon 2,9 GHz - 32GB Ram
NVIDIA Quadro P2000M
Windows 10 Pro 64Bit Version 1809
Build 17763.1098
SWX2020-64Bit-SP1.0
MaxxDB 2020 SP0.06
DraftSight Enterprise 2019 x64 SP3
3DCONNEXION SpaceMouse Enterprise mit CadMouse

erstellt am: 31. Aug. 2015 11:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Joker15 10 Unities + Antwort hilfreich

Hallo Joker15,

hab gerade auch ein Makro geschrieben, welches mit "InsertBomTable4" eine Stückliste einfügt. Dann wollte ich den Text in der Überschrift der Tabelle ändern und hab lange gebraucht bis ich zur entsprechenden Funktion kam. Die war auch über Umwege durch BomFeature zu bekommen. Willst Du die Funktion die Stefan für Dich rausgesucht hat aufrufen musst Du erst ein BomFeature-Objekt erzeugen( set neueVariable = swBOMTable.BomFeature ), da Dein swBOMTable ein IBomTableAnnotation-Objekt ist.

------------------
Viele Grüße aus Brackenheim

Lars Pauly

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Joker15
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Joker15 an!   Senden Sie eine Private Message an Joker15  Schreiben Sie einen Gästebucheintrag für Joker15

Beiträge: 22
Registriert: 09.06.2015

SolidWorks 2013

erstellt am: 01. Sep. 2015 15:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke ihr zwei!
Hat geklappt!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz