VBA SolidWorks Konwertuj wartość ciągu

Tutaj mam mały problem, pobieram wartości z listy części lutowniczych, aby wysłać je do niestandardowych właściwości. Używam; "SW-Szerokość ściany bocznej tôle@@@Sheet<1>@C000-00-MS-001. SLDPRT"

Zwracana wartość jest niestabilna, nie jest zgodna z formatem jednostki skonfigurowanym we właściwościach dokumentu. Automatycznie obcina cyfry 0 po prawej stronie, jeśli takie istnieją, nawet jeśli zaznaczona jest opcja ich nieusuwania. Pomyślałem więc o rozwiązaniu. Za pomocą makra pobierz wartość, przekształć ją na 3 miejsca po przecinku i na koniec zwróć ją we właściwościach niestandardowych. Problem polega na tym, że jestem w stanie pójść i pobrać tę wartość i odesłać ją, ale nie wiem, jak przekształcić ją w wartość z dokładnością do 3 miejsc po przecinku, czy ktoś mógłby mi pomóc.

Dziękuję

    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

 

Witam

Znajdziesz tu całą masę informacji na temat tego, jak manipulować ciągami znaków w VBA ICI.

Pozdrowienia

1 polubienie

Dobry wieczór

Przy okazji:

MsgBox "teste" & " = " & valout

 

... można i należy uprościć poprzez:

MsgBox "teste = " & valout

 

Cdt

1 polubienie