Macro om onderdelen in een assemblage in te voegen

Hallo

 

Ik ben op zoek naar een manier, een macro (of iemand die het voor mij kan maken) om onderdelen in een assemblage in te voegen vanuit een Excel-bestand dat (onder andere): de naam van het onderdeel (Kolom B) en het pad (kolom F) bevat.

 

Concreet volgt deze vraag op een eerdere vraag die ik een paar weken geleden stelde: ik heb een assemblage van een onderdeel dat het meubilair van een boot vormt. Van deze onderdelen moet ik een lay-outbestand aanleveren bij mijn leverancier. De beste oplossing die mij werd aangeboden om alle onderdelen plat te maken, is om een nieuwe assemblage te maken met alle onderdelen beperkt volgens het vlak. Ja, maar er zitten veel munten in de vier hoeken van de server.... Dus ik zou graag in staat zijn om een macro te gebruiken die alle onderdelen in het bestand importeert. Daarna zal het me lukken om ze te positioneren zoals ik wil.

 

Zou iemand mij kunnen helpen?

Heel erg bedankt =)

 

 

 

2 likes

Hallo

Het bijgevoegde programma is een beetje haastig maar werkt thuis (Solidworks 2015, versie 4.5.2 van het framework)

U begint met het uitpakken van het bijgevoegde bestand op uw bureaublad en vervolgens:

1°) u extraheert uw 2 kolommen "onderdeelnaam" en "pad" uit uw Excel-bestand om een csv-bestand te maken dat is geformatteerd zoals het voorbeeld met de naam "Liste-3D.csv" (bij voorkeur te coderen in UTF-8).

2°) U noemt dit CSV-bestand "Liste-3D.csv" en u plaatst het in de programmamap in plaats van in het bestaande.

3°) je opent een nieuwe assemblage in Solidworks.

4°) u start het programma "Ajout-3D.exe".

5°) klikt u op de knop "Componenten toevoegen".

6°) u wacht tot het bericht "Verwerking voltooid"

7°) U verlaat het programma.

Het enige dat u nog hoeft te doen, is uw onderdelen positioneren en uw assemblage opslaan.

Misschien het programma testen op een beperkt aantal onderdelen (regels in het csv-bestand) om te zien of het werkt zoals jij wilt.

Vriendelijke groeten


ajout-3d.zip
4 likes

Dus daar, ik dank je heel erg =D

Ik zal de macro morgen proberen op kleine assemblages en als alles goed gaat, kan ik het maandag op grotere schaal gebruiken.

 

Nogmaals heel erg bedankt!! Ik hou jullie snel op de hoogte =)

Hallo d.roger

Ik heb net het programma getest dat aan het einde een kleine bug heeft.

Alles lijkt in orde te zijn, de lijst met componenten verschijnt in het programma, maar na het bericht "verwerking voltooid" zijn de componenten geopend maar niet in de assemblage geplaatst. Dat gezegd hebbende, als alles eenmaal open is, kan ik het heel gemakkelijk laten invoegen, het geeft een lijst van de geopende bestanden, ik selecteer alles en rol mijn kip =)

Ik ben op Solidworks 2016.

 

Heel erg bedankt =)

 

Hallo

Kleine bug goed om te weten, het betekent dat ik wat wijzigingen zou moeten aanbrengen in mijn programma's bij het overstappen naar Solidworks 2016 of waarschijnlijker 2017 voor de volgende versiewijziging.

Blij dat ik je heb kunnen helpen.

Vriendelijke groeten

Hallo d.roger

 

Wanneer ik het programma met mijn "grote" assembly uitvoer, worden alle onderdelen van de assembly geopend, maar ik bereik al snel de limiet van open documenten waar Solidworks raad mee weet te gaan.

Denkt u dat het mogelijk zou zijn om het probleem van het invoegen van de onderdelen in het model op te lossen?

 

Hartelijk dank

 

Het probleem is dat ik geen SolidWorks 2016 bij de hand heb.

Op mijn pc wordt elk onderdeel geopend, in de assemblage geplaatst en vervolgens weer gesloten, dus geen risico op beperking van geopende documenten. Kunt u mij vertellen hoe groot uw stukbestanden gemiddeld zijn?

Kun je ook controleren of je niet meerdere SLDWORKS.exe processen hebt draaien?

Ik zal een paar veranderingen proberen, ik hou je op de hoogte.

Vriendelijke groeten

1 like

Mijn "onderdelen" bestanden zijn meestal minder dan 100kB, sommige gaan tot 6000kB, maar het is nog steeds erg marginaal

In ieder geval dank ik je hartelijk voor je hulp =D

 

Hier is een versie 2 om te testen, het is een beetje blind (geen SW2016) en een normale werking op mijn PC.

Raak Solidworks niet aan tijdens de verwerking, omdat dit het kan storen in de doorgangen van het ene raam naar het andere.

Vriendelijke groeten


ajout-3d-v2.zip
1 like

Ja!

Het inbrengen werkt perfect, behalve dat het onderdeel daarna niet wordt gesloten. Ik heb het programma gelanceerd door de lijst in tweeën te scheiden, het werkt goed.

 

Nogmaals heel erg bedankt =)

 

Hallo

Oeps, ik had een parameter gewijzigd toen het bestand werd geladen, maar ik vergat deze te wijzigen voor het sluiten.

Het is opgelost, het zou nu moeten werken zoals het hoort.

Vriendelijke groeten


ajout-3d-v3.zip