Voor noobs zoals wij bij het maken van macro's, is er een functie om functies in SW vast te leggen. Je start de opname, je doet je manipulatie en SW maakt automatisch de code van wat je op het scherm hebt gedaan.
Daarmee heb je 90% van je macro.
Het enige wat je nodig hebt is de lus(sen) om het .sldblk-bestand te wijzigen, evenals de declaratie van de variabelen (naam van het recordbestand, waarschijnlijk nog wat meer tijdelijke variabelen..).
Ik keek naar de link op 3dexperience, ik heb de gegevens bijgewerkt (pad van mijn bestanden en anderen), maar er gebeurt niets bij het starten van de macro. Ik heb de genoemde macro uitgevoerd met een open bestand, van een schets, zonder dat er iets open is, gebeurt er niets... Schaamte
Ik heb wel een macro opgenomen die het werk doet voor ongeveer 1 bestand.
Aan de andere kant weet ik niet hoe ik een lus en een opname onder dezelfde naam als het blok moet integreren. Is er een onderwerp over deze elementen, dan zou het een alternatief kunnen zijn voor mijn zoektocht.
Bijgevoegd de macro van een geselecteerde kamer, een schot dan start de macro en het werkt (behalve dat het blok niet vast is)
Het moet beter, maar we komen steeds dichterbij.
Na het zien van je verzoek als je maar 100 blokken hebt om te wijzigen, weet ik niet zeker of het ontwikkelen van een macro die niet bestaat sneller is voor 1000 blokken of meer, aan de andere kant, ik zeg het niet. 100 blok = 1 tot 2 uur is veel minder dan de ontwikkeling van een macro, zelfs voor iemand die er verstand van heeft.
Bedankt voor je feedback. Ja, ik denk dat ik gebruikte de ririfififi macro met class1 en module1 apart en gegevens (bestand pad...) in overeenstemming met mijn bestanden.
Bedankt voor je macro, maar het voldoet niet echt aan mijn behoeften. Van mijn kant slaag ik er met mijn macro in om een nieuwe kamer te maken, het blok op schaal in te voegen, op te slaan en te sluiten. Voor 1 gedefinieerd model.
Ik mis het "loop"-aspect dat het openen van het volgende blok zou automatiseren en de acties zou reproduceren.
Ik heb gekeken maar helaas kom ik vast te zitten... Ik ga overschakelen naar de "handmatige" modus, dus
Het antwoord is misschien een beetje laat, maar de bijgevoegde macro zou uw probleem moeten beantwoorden. Genereren van de onderdelen met schets in het gezichtsvlak, invoegen bij de oorsprong, op schaal 4. 3 regels moeten worden aangepast om het aan uw systeem aan te passen: - regel 35: brondirectory van blokdocumenten (met extensie "SLDBLK"); - regel 36: doelmap van de onderdelenbestanden, met dezelfde naam als de blokken, met de extensie "SLDPRT"; - Regel 40: Het pad en de naam van het standaard onderdeelmodel voor uw versie van SolidWorks.
Wat is het type fout? Dit? Als dit het geval is, moet u controleren of de variabelen Part en swModel niet leeg zijn: in de foutopsporingsmodus hoeft u alleen maar de cursor boven een van deze twee variabelen te laten staan om de inhoud ervan weer te geven. Als ze gelijk zijn aan Niets, betekent dit dat de vorige instructie Part = swApp.NewDocument... (regel 40) retourneert niets en het SolidWorks-document is niet geopend. Vandaar de fout bij het maken van de sketch manager. De string die het sjabloonbestand definieert, is waarschijnlijk verkeerd, je moet heel zorgvuldig controleren of het bestaat, met het aangegeven pad (op mijn bronbestand staat het in de map SW 2018).