Wie rufe ich das Format einer Zeichnung in einem SOLIDWORKS Makro ab?

Hallo

 

Ich möchte den Hintergrund einer Makrozeichnung ändern (neue Hintergrundplanvorlage), aber dazu muss ich wissen, in welchem Format meine Bildschirmzeichnung vorliegt.

(A0 oder A1 oder A2 oder A3 oder A4) Diese Eigenschaft ist in meinem Modell unter dem Namen "DRAWING-CAD_SHEESIZE" gespeichert.

 

Wie rufe ich diese Variable in einem Makro ab, um dann ihren Wert zu testen, um die neue Grundkarte derselben Größe zu laden?

Ich weiß einfach nicht, wie ich die Variable wiederherstellen kann!!

 

Vielen Dank im Voraus

 


format.jpg

Wenn Sie die mycadtools Suite haben, kann diese Massenänderung einfach über das INTEGRATION-Dienstprogramm durchgeführt werden.

1 „Gefällt mir“

Nein, ich habe dieses Tool nicht...

Hallo

Hier eine Antwort:

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

 

Ich fange in VB mit SolidWorks an (ich mache VB mit Excel, aber es ist anders)

Ich brauche etwas Klares. (mit Deklarationen)

Kann mir jemand die Codezeilen (VB) schreiben, um den Wert meiner Variablen "DRAWING-CAD-SHEETSIZE" abzurufen?

Ich sollte 'A3' in einer Variablen bekommen .

 

Danke für Ihre Hilfe


format.jpg

Hallo

Hier ist der Code, den ich IN VBA verwende:

'Abruf von Blattinformationen
Dim ps As PageSetup
Legen Sie ps = swDraw.PageSetup fest
Legen Sie swSheet = swDraw.GetCurrentSheet fest
vSheetProps = swSheet.GetProperties
size = swSheet.GetSize(Breite, Höhe)

Dann weise ich das Format der Ebene in einer Variablen entsprechend den abgerufenen Bemaßungen zu.

Gehen Sie zur API-Hilfe, Sie finden Murmeln, indem Sie nach "getsize" suchen...

Ein +

1 „Gefällt mir“

Vielen Dank, Glaffont

 

Ich war auf der gleichen Spur.

Ich habe die Eigenschaften des Blattes

vSheetProps = swSheet.GetProperties

vSheetProps (0) gibt je nach Papierformat einen Wert zwischen 6 und 11 zurück.

Alles, was Sie tun müssen, ist, einen Test darauf zu machen, und Sie sind fertig.

 

Vielen Dank

 

Re

Wenn sich Ihr Format bereits in einer Eigenschaft befindet, können Sie es auf diese Weise abrufen (immer noch in VBA):

Dimmen des Teils als IModelDoc2

ValProp als String dimmen

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

 

In VB sollte es so aussehen (kann ich aber nicht testen):

Dim-Instanz als IModelDoc2
Dim-Wert als System.String

Wert = Instanz. GetCustomInfoValue("","DRAWING-CAD_SHEESIZE")

 

Aber gerne,

Die Zeile size = swSheet.GetSize(Width, Height) gibt diesen Wert auch live zurück.

Ich hatte die Informationen dupliziert, weil ich zu diesem Zeitpunkt nicht wusste, wie ich die Werte aus vSheetProps (XX) extrahieren sollte

Schönen Tag