Makro Excel

Hallo ihr alle.

 

Ich werde versuchen, es klar zu sagen.

 

- Ich habe ein Blechprofil, das ich in dxf (ungefalteter Sound) exportieren muss

- Dieses Profil variiert in der Länge

- Ich habe die Liste aller Längen in einer Excel-Arbeitsmappe sowie deren jeweilige Anzahl.

 

Ist es möglich, über die Excel-Datei, alle dxf entsprechend der Längen, automatisch zu exportieren.

Ein kleiner zusätzlicher Punkt: Zwischen jeder Längenänderung müssen wir eine dreifache Rekonstruktion haben, da es Formeln gibt, die entsprechend der Länge neu berechnet werden können.

Und auch, wenn möglich, im Namen des dxf die Menge haben, die sich auf diese und jene Längen bezieht.

 

Müssen Sie durch eine Familie von Räumen gehen? Durch ein Makro? Oder etwas anderes?

 

Ich finde es verständlich =)

 

 

 

2 „Gefällt mir“

Hier ist ein kleiner Vorgeschmack darauf, was ich mir am Ende wünsche.

 

Gelangen Sie in Excel zu einer Liste der dxf-Dateien.

 

Vielen Dank! =)


exemple.png
1 „Gefällt mir“

Hallo Bart,

Wir werden ein bisschen mehr brauchen. Wie funktioniert Ihre SW-Datei? Mehrere Konfigurationen oder nur eine und wir ändern die Länge?

Persönlich würde ich eine SW-Datei mit einer Familie von Teilen erstellen. Wir hätten also eine Konfiguration nach Länge.

Dann im Code:

  1. Öffnen Sie die Datei
  2. Durchsuchen Sie jede Konfiguration in
    1. Auswählen einer Konfiguration
    2. Rekonstruiert
    3. Export in dxf (Wie möchten Sie die dxf-Datei verwalten?)
    4. Fahren Sie mit dem nächsten fort, falls es ihn gibt.
  3. Speichert die SW-Datei

Habe ich alles verstanden? Ist das passend?

2 „Gefällt mir“

Ja @remrem, im Grunde war's das.

 

Ich habe eine Excel-Datei mit z.B. 500 verschiedenen Längen.

Mein Teil hat Löcher, die über die Länge verteilt sind.

 

Deshalb:

  1. Ich lege die Excel-Datei mit dem Dokument in die Kundenakte.
  2. Ich werfe ein Makro,
  3. Sw entfaltet mein Stück für die erste Länge,
  4. Exportiert in DXF in die Client-Datei
  5. Sw enthält (oder nicht) die Menge, die sich in Excel im Namen des DXF befindet
  6. Dann geht es zur nächsten Zeile
  7. 3-mal umgebaut
  8. Dann machen Sie den gleichen Trick noch einmal, exportieren Sie in DXF usw.

Wenn ich zusammenfasse, gehe ich von einem Raum mit seinem Excel aus und erhalte am Ende eine Liste von dxf nach Längen.

 

1 „Gefällt mir“

Ich werde mich wiederholen, aber dein Stück hat eine Familie von Stücken oder nicht?

Woher wissen Sie dann, welche Konfigurationen Sie taritieren müssen: Was enthält Ihre Excel-Datei: den Namen der Konfiguration, die Länge? Gibt es eine Beziehung zwischen der Länge und dem Namen der Konfiguration?

Hier sehen Sie ein Beispiel für ein Makro, das die Konfigurationen einer Datei auflistet: http://help.solidworks.com/2015/english/api/sldworksapi/Get_List_Of_Configurations_Example_VB.htm

Dann müssen Sie die erhaltene Liste mit der in Ihrer Excel-Datei vergleichen.

Anschließend nach dxf exportieren: http://help.solidworks.com/2015/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.ipartdoc~exportflatpatternview.html

 

2 „Gefällt mir“

Auf den ersten Blick scheint es mir nicht unmöglich. Ich kenne das Gateway nicht, um von Excel zum Öffnen von Teilen in Solidworks zu gelangen ... Aber ich sehe nicht, warum es nicht möglich wäre.

 

Um also zu vergeben. Wenn Sie @Bart gelöst haben, könnten Sie uns die Gliederung Ihres Codes geben. Es könnte in Zukunft helfen;)

2 „Gefällt mir“

Ich habe in meinem ersten Beitrag ein Bild angehängt.

 

Sie können die Etappen meines Ansatzes sehen.

 

Im Moment habe ich einen Teil, der Gleichungen hat, die Funktionen steuern.

Keine Teilefamilie oder Konfiguration.

Mein Excel enthält den Namen des Teils, seine Länge und seine Menge (im schlimmsten Fall für die Menge, die ich schaffe)

 

Ich weiß, dass es möglich ist, aber die Frage ist, wie?...

Wenn ich dann durch ein Makro gehen muss, bin ich ein .... in VBA :/

http://www.lynkoa.com/forum/3d/mise-jour-auto-famille-piece

 

Ich habe im Zickzack gelesen, aber anscheinend hat er es geschafft, eine Verbindung in SolidWorks und Excel herzustellen.

2 „Gefällt mir“

Ich habe Ihren Ansatz verstanden.

Aber ich möchte wissen, ob Sie Ihren Raum anpassen können, um das Makro leichter zu erreichen, oder ob sich das Makro vollständig an Ihre Umgebung anpassen sollte.

Persönlich aus Erfahrung, um so etwas zu erreichen und dass es perfekt funktioniert. Das nimmt ziemlich viel Zeit in Anspruch. Deshalb ist es notwendig, die Dinge in Ordnung zu bringen und unser Ziel klar zu bestimmen. Denn sonst ertappst du dich dabei, wie du programmierst und dann wieder von vorne anfängst, weil es nicht mehr passt.

Ohne Beherrschung des VBA. Ich rate Ihnen, Ihr Projekt danach zu zerlegen und nacheinander durchzuführen. Bsp.: Öffnen der Datei, Liste der Konfigurationen, Export. Und um zu fragen, versuchen und dann Fragen im Forum zu stellen.

Ich kann dieses Projekt nicht komplett durchführen. Das Ziel ist es auch, zu lernen, denn wenn Sie alle Ihre Codes erhalten, werden Sie nicht in der Lage sein, sie rechtzeitig zum Leben zu erwecken.

Guter Code :-)

3 „Gefällt mir“

Ich stimme Ihnen voll und ganz zu, Remrem.

 

Deshalb habe ich alles Schritt für Schritt detailliert beschrieben.

 

Ich verlange kein schlüsselfertiges Makro, sondern eher zu wissen, wohin ich gehen soll.

Ob ich die Teilefamilien sehen muss oder nicht, ob ein Makro notwendig ist usw. usw.

 

Ich habe die Dinge festgelegt, alles, was ich noch tun muss, ist Schritt für Schritt zu programmieren

1 „Gefällt mir“

Also fange ich alleine an und stelle Fragen, wenn ich nicht weiterkomme.

 

Das heißt, bald! :p

4 „Gefällt mir“

@KVuilleumier:

Eine Beziehung zwischen Excel und Sw ist durchaus möglich.

Persönlich habe ich eine Anwendung erstellt, die sich in Excel und SW-Treiber integrieren lässt: Änderung der Eigenschaften, Export der Nomenklatur...

Aber mal wieder muss Bart uns sagen, was er machen will: SW aus Excel steuern ODER dann SW seine Excel-Datei lesen und die Info verarbeiten...

Ich persönlich würde eher zum Zweiten tendieren.

 

2 „Gefällt mir“

Hallo ihr alle

Ich denke, es wird einfacher sein, Ihre Teilefamilie aus Ihrer Excel-Datei zu  erstellen (Link unten):  Es dauert 1 oder 2 Minuten, während das Programm schwierig zu erstellen sein kann und eine Fehlerquelle darstellt.

http://help.solidworks.com/2013/french/SolidWorks/sldworks/t_Inserting_an_External_File_as_a_Design_Table.htm

Dann müssen Sie nur noch dieses Makro einfügen, das die DXF für alle Konfigurationen erstellt:

 https://forum.solidworks.com/thread/27842 (Englisch)

Dieses Video könnte Sie auch interessieren:

https://www.youtube.com/watch?v=8SW-UZy1QMA

Bearbeiten: siehe auch:

https://www.youtube.com/watch?v=rSeYL77cqBQ

 

2 „Gefällt mir“

Genau wie PL denke ich, dass die Teilefamilie eine gute Sache wäre. Und vor allem würde es Ihnen ermöglichen, die maximale Menge an Informationen und Funktionen in Ihren SW-Dateien zu behalten. Das heißt, wenn Ihr Code nicht mehr funktioniert oder ein Benutzer keinen Zugriff darauf hat, ist ein großer Teil der Informationen in SW zugänglich.

Wir freuen uns darauf, Ihnen zu helfen...

:-)

2 „Gefällt mir“

Das Coole an der Erstellung eines Makroprogramms ist, dass es seine native Datei in den spezifischen Ordner des Kunden kopieren, sein Excel öffnen und alles steuern kann.

 

Bei der Teilefamilie hingegen wird er gezwungen sein, für jeden Kunden ein neues zu erstellen (wenn ich verstanden habe, wie es funktioniert)

1 „Gefällt mir“

@coin37coin Ja, aber 1 Tag mit dem Programmieren zu verbringen (vielleicht weniger für einen erfahrenen VBA-Benutzer, aber ich glaube nicht, dass das bei Bart der Fall ist), um Quoten in einer Excel-Datei abzurufen, lohnt es sich? Und vorausgesetzt, die Excel-Datei hat noch genau die gleiche Formatierung, sonst stürzt sie ab!

Wenn die Erstellung der Teilefamilie in SolidWorks von Hand maximal 5 Minuten dauert (und ich denke, es sind weniger als 5 Minuten), dann müssten Sie mindestens 80 Minuten arbeiten, damit es an einem 7-Stunden-Tag rentabel ist...

2 „Gefällt mir“

Sicherlich... Es ist die dunkle Seite der Geschichte

1 „Gefällt mir“

Das ist die Sache,
Es ist so, dass ich eine Excel-Datei vom Client erhalte, aber ich möchte vermeiden, dass ich alles noch einmal eingeben muss.

 

Dies ist eine Fehlerquelle. Ich muss Solidworks durchlaufen und ein Makro auslösen, damit es schleift und meine Liste der DXF-Dateien in den Ordner des Clients speichert.

 

In meinem Fall wird die Excel-Datei immer gleich sein, es wird immer die Länge sein, die sich ändert, und wenn wir schon dabei sind, die Länge der Flügel.

 

Und indem Sie über Driveworks gehen? Ich bekomme nicht alles auf einmal zurück?

 

Ich möchte 1 Tag mit Programmieren verbringen, das ist etwas, das oft vorkommt, also werde ich immer noch Zeit sparen.

1 „Gefällt mir“

Nun, ich komme ein bisschen so an, ohne das ganze Gespräch gelesen zu haben, also mea culpa, wenn es schon besprochen wurde, aber:

Wenn Sie die Excel-Datei vom Client erhalten, ist sie immer gleich formatiert?

Für uns gehen wir mit einem "Konstruktionsblatt" vor, es ist eine Excel-Datei, in die die technischen Vertriebsmitarbeiter alle Größeninformationen, aber auch andere Informationen für andere Abteilungen des Unternehmens eingeben.

Dann verwendet der B.E ein Blatt, das als "Recap" bezeichnet wird, es ist ein Blatt mit einem Makro, das dieses Konstruktionsblatt öffnet, das die wesentlichen Informationen für das Konstruktionsbüro kopiert und in bestimmte Felder einfügt. Es ist dieses Blatt, das mit unserem CAD in Verbindung steht.

Hier habe ich gerade mein Leben erzählt:)

2 „Gefällt mir“

@Aurelien (vom Axemble-Support) :p

 

Ich bekomme verschiedene Excels, aber das Formatieren dauert nur 2 Minuten.

Das Sortieren einer Excel-Datei ist schneller, als alles von Hand in Sw einzugeben und dann alles einzeln in dxf zu exportieren =)