Hoe runtime-fout '91' op te lossen?

Hallo allemaal,

 

Omdat ik in BTS Crsa zit, moet ik een configureerbare CAD van een transportband maken (stageproject).

Ik gebruik meestal Solid Edge, maar het bedrijf waar ik zit gebruikt Solidworks, dus ik ben een beetje verdwaald.

Het doel van dit project is om de afmetingen van een transportband (lengte, breedte etc.) in te kunnen stellen, dus ik heb een macro gemaakt in excel door solidworks etc. te declareren. Alleen is er niet veel dat werkt. Omdat ik niet gewend ben om dit soort werk te doen (ik ben nul in vba!) geef ik je mijn macro met enkele indicaties zodat je het voor mij kunt verduidelijken:

 

Sub Bouton_Clic()

 

Stel swApp = CreateObject("Sldworks.Application") in

Deel instellen = swApp.ActiveDoc

 

Deel.Parameter("D1@Esquisse1@Longueur_convoyeur"). SystemValue = bereik ("C2"). Waarde / 1000

Deel.ClearSelection

Deel.ForceHerbouwen

 

Deel.Parameter("D1@Extru.-Mince1@Largeur_convoyeur"). SystemValue = bereik ("C4"). Waarde / 1000

Deel.ClearSelection

Deel.ForceHerbouwen

 

Einde Sub

 

De foutmelding is een runtime-fout '91', maar ik zie niet wat er mis is.

Dit zijn de "Part.Parameter... " die zijn gemarkeerd.

"Longueur_convoyeur" en "Largeur_convoyeur" vallen samen met de naam die ik in Excel heb gegeven.

 

Ik hoop dat ik mijn probleem goed heb uitgelegd.

 

Bij voorbaat dank

Hallo

In SolidWorks is er dus het begrip configuratie (deelfamilie) om de verschillende versies van een project (onderdeel of assemblage) te beheren. Configuraties worden gemaakt zodra uw geometrie is voltooid, en variabelen die moeten worden gewijzigd, kunnen worden aangestuurd door een Excel-spreadsheet die in uw SolidWorks-document wordt afgedrukt. Dit kunnen de afmetingen zijn, de eigenschappen, de status van verwijdering of niet van de functies enz ... Neem de tijd om de online help te raadplegen.

Ik denk dat het doorlopen van een macro in Excel een beetje ingewikkeld is! Tenminste, dat is mijn mening.

Vriendelijke groeten

4 likes

Runtime-fout "91" betekent dat het object niet is verbonden/ingevuld... Het is dus leeg

Het is duidelijk dat de namen van de kansen niet overeenkomen...

zet uw document in een stuk bijgevoegd dat ik controleer ...

 

 

 

5 likes

Bedankt voor je antwoord jmsavoyat, nog een laatste kleine vraag:

Dus ik heb net een automatische creatie gemaakt die een tabel toevoegt in solidworks, zoals je me vertelde, maar ik wilde weten of het geen probleem zou zijn, aangezien ik rechtstreeks aan een assembly werk (in termen van beperkingen enz.)

 

Vriendelijke groeten

Hallo

 

Er zijn verschillende tutorials over deelfamilies op SolidWorks, bijvoorbeeld deze twee:

 

http://www.lynkoa.com/store/fr/tutos-formations/tutos/thematiques-avancees-les-familles-de-pieces-dans-solidworks.html

 

http://www.lynkoa.com/store/fr/tutos-formations/formations/famille-de-pieces-solidworks.html

 

De families van onderdelen (zelfs als de naam misleidend is) werken heel goed in assemblages!

Het is mogelijk om spanningen, verwijderingen van bepaalde onderdelen, spanningsafstandswaarden tussen onderdelen, enz. te verwerken.

1 like

A: Jfaradon

Hier is het bestand (zoals ik je al zei, ik begin toegeeflijk te zijn als het mogelijk is!)


3217-1000_convoyeur_sortie_multivac2.xlsx

Probleem voor de bijlage, ik kan het niet opslaan of openen met de bestanden inclusief de macro's...

Bedankt, maar ik dacht meer aan het solidworks-document om te zien of de namen van de zijden overeenkwamen met het programma

het bijgevoegde bestand 3217-1000_convoyeur_sortie_multivac2.xlsx ik kan het niet openen ... Excel vertelt me dat het bestand beschadigd moet zijn???

De eenvoudigste manier is om een macro-opname te maken en de afmetingen te wijzigen, in de code wordt de naam van de te wijzigen afmetingen geschreven

 

5 likes

Een Excel-document met een macro moet worden opgeslagen in XLSM, niet in XLSX

5 likes

Mijn macro is iets veranderd:

 

 

Sub Bouton1_Clic()

 

Stel swApp = CreateObject("SldWorks.Application") in
Deel instellen = swApp.ActiveDoc

 

Part.Parameter("D4@Esquisse1@Longueur"). SystemValue = Bereik("D3"). Waarde / 1000
Deel.ClearSelection
Deel.ForceHerbouwen

 

Deel.Parameter("D1@Extru.-Mince1@Largeur"). SystemValue = Bereik("D5"). Waarde / 1000
Deel.ClearSelection
Deel.ForceHerbouwen

 

Einde Sub

 En hier is het Solidworks-bestand, ja ik weet het voor het bestand, ik kan het alleen opslaan in xlsx, ik weet niet waarom...


3217-1000_convoyeur_sortie_multivac2.sldasm

Ik ben een lastige, maar in de SW-wereld kun je niets doen zonder de componenten...  

Het .SLDASM (assembly) bestand bevat alleen de links naar de onderdelen .sldprt component bestanden

 

Maak een rits van de sldasm plus de .sldprt onderdelen...

 

5 likes

Ik stuur je het .zip bestand in de vroege avond omdat ik niet eerder beschikbaar zal zijn.

Sorry voor het bestandsformaat, bedankt voor je hulp eerder

 

Vriendelijke groeten

1 like

Ik weet niet zeker of dit is wat je wilde, ik heb net mijn solidworks-bestand omgezet in een .zip....


3217-1000_convoyeur_sortie_multivac2.zip

Als je een bijeenkomst wilt delen, maak dan een samenstelling om mee naar huis te nemen (File/Take-Away Publication). Je kunt het geheel direct in een zip-bestand opslaan.

4 likes

Hallo

 

Of je nu met SolidEdge of SolidWorks werkt, het principe is hetzelfde, de assemblages verwijzen naar onderdelen. Dus als je het geheel alleen in de rits verstuurt, kunnen we deze niet goed openen en kunnen we je dus niet helpen.

Gebruik dus de @Benoit.LF-methode, open je assemblage en gebruik vervolgens de take-away compositiefunctie in het  menu Bestand. U kunt dan een zip maken met alle benodigde bestanden.

 

Aan de andere kant ben ik het eens met degenen die het nut niet inzien van het maken van een macro voor wat je wilt doen.

Een kamerfamilie in combinatie met een "configuratie-uitgever" zou voldoende moeten zijn.

 

@+

 

4 likes

Als je je assemblage in de juiste configuratie hebt (niet in de zin van SW, in de zin van lengte, opties...) wat moet je er dan mee doen? Extract (niet in de zin van EPDM...) Alle plandeelbestanden om ze te hernoemen of configuraties toe te voegen aan de bestaande bestanden?

 

Dit is belangrijk voor de richting die je uitgaat in je ontwerp:

_ Ruimteconfiguraties> Oplossing @coyote, uitgever

_ Hernoem alle stukken: maak liever een basismodel (TEMPLATE) dat je opnieuw registreert met een compositie om mee te nemen.

 

 

1 like

Hallo, hier is het bestand (sorry voor mijn onhandigheid)

Bedankt Benoît voor de aanpak


3217-1000_convoyeur_sortie_multivac2.zip
1 like

Hoi @ Alexis

In aanvulling op alle voorgaande info

 

Ik heb je een link gevonden voor de runtime error 91

http://www.developpez.net/forums/d1185252/logiciels/microsoft-office/excel/macros-vba-excel/erreur-d-execution-91-a/

 

(Ik wou dat ik je een beetje had geholpen of niets van macro wist)

 

@+ ;-)

 

Bedankt gt22, maar het werkt ook niet ..!