Hoe haal ik het formaat van een tekening op in een solidworks-macro?

Hallo

 

Ik wil graag de achtergrond van een macrotekening wijzigen (nieuw achtergrondplansjabloon), maar om dit te doen moet ik weten in welk formaat mijn tekening op het scherm is.

(A0 of A1 of A2 of A3 of A4) deze eigenschap is opgeslagen in mijn model onder de naam "DRAWING-CAD_SHEESIZE".

 

Hoe haal ik deze variabele op in een macro om vervolgens de waarde ervan te testen om de nieuwe basiskaart van dezelfde grootte te laden?

Ik weet gewoon niet hoe ik de variabele kan herstellen!!

 

Bij voorbaat dank

 


format.jpg

Als u de mycadtools-suite hebt, kunt u deze bulkwijziging eenvoudig uitvoeren via het hulpprogramma INTEGRATION.

1 like

Nee, ik heb deze tool niet...

Hallo

Een antwoord hier:

https://forum.solidworks.com/thread/67115

 

Ik begin in VB met SolidWorks (ik doe VB met Excel, maar het is anders)

Ik heb iets duidelijks nodig. (met verklaringen)

Kan iemand mij de regels code (VB) schrijven om de waarde van mijn variabele "DRAWING-CAD-SHEETSIZE" op te halen.

Ik zou 'A3' moeten krijgen in een variabele.

 

Bedankt voor je hulp


format.jpg

Hallo

Hier is de code die ik gebruik IN VBA:

'Blad info ophalen
Dim ps als PageSetup
Stel ps in = swDraw.PageSetup
Stel swSheet in = swDraw.GetCurrentSheet
vSheetProps = swSheet.GetProperties
size = swSheet.GetSize(Breedte, Hoogte)

Vervolgens wijs ik het formaat van het vliegtuig toe in een variabele op basis van de opgehaalde afmetingen.

Ga naar de API-help, je vindt knikkers door te zoeken naar "getsize"...

Een +

1 like

Heel erg bedankt Glaffont

 

Ik zat op hetzelfde spoor.

Ik heb de eigenschappen van het blad

vSheetProps = swSheet.GetProperties

De vSheetProps (0) geeft een waarde tussen 6 en 11 terug, afhankelijk van het formaat van het papier.

Het enige wat je hoeft te doen is er een test op te doen en je bent klaar.

 

Bedankt

 

Re

Als uw formaat al in een eigenschap staat, kunt u deze op deze manier ophalen (nog steeds in VBA):

Dim deel als IModelDoc2

Dim ValProp als snaar

ValProp = Part.GetCustomInfoValue("", "TEKENING-CAD_SHEESIZE")

 

In VB zou het er zo uit moeten zien (maar ik kan niet testen):

Exemplaar dimmen als IModelDoc2
Dim waarde als System.String

Waarde = instantie. GetCustomInfoValue("","TEKENING-CAD_SHEESIZE")

 

Maar graag gedaan,

De regelgrootte = swSheet.GetSize(Breedte, Hoogte) retourneert deze waarde ook live.

Ik had de info gedupliceerd omdat ik op dat moment niet wist hoe ik de waarden uit vSheetProps (XX) moest halen

Fijne dag