VBA SolidWorks String Waarde Converteren

Hier heb ik een klein probleempje, ik krijg waarden uit de lijst met soldeeronderdelen om ze naar de aangepaste eigenschappen te sturen. Ik gebruik; "SW-Zijwandbreedte van tôle@@@Sheet<1>@C000-00-MS-001. SLDPRT"

De geretourneerde waarde is onstabiel, deze volgt niet de eenheidsindeling die is geconfigureerd in de documenteigenschappen. Het kapt automatisch de 0's aan de rechterkant af als die er is, zelfs als de optie om ze niet te verwijderen is aangevinkt. Dus bedacht ik een oplossing. Via een macro ga je de waarde ophalen, deze omzetten naar 3 cijfers achter de komma en uiteindelijk teruggeven in de custom properties. Het probleem is dat ik in staat ben om deze waarde te gaan halen en terug te sturen, maar ik weet niet hoe ik het moet omzetten in een waarde tot 3 cijfers achter de komma, kan iemand me helpen.

Bedankt

    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim swCustPropMgr As SldWorks.CustomPropertyManager
    Dim textexp As String
    Dim valout As String
    Dim retVal As Double
    

    Sub main()

    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swCustPropMgr = swModel.Extension.CustomPropertyManager("")


        swCustPropMgr.Get2 "teste", textexp, valout
        
        retVal = swCustPropMgr.Delete2("teste")
        retVal = swCustPropMgr.Add2("teste", swCustomInfoText, valout)
        
        MsgBox "teste" & " = " & valout

End Sub

 

Hallo

U vindt een heleboel informatie over het manipuleren van strings in VBA ICI.

Vriendelijke groeten

1 like

Goedenavond

Trouwens:

MsgBox "teste" & " = " & valout

 

... kan en moet worden vereenvoudigd door:

MsgBox "teste = " & valout

 

Cdt

1 like