Código:
Private Sub Command1_Click()
Dim num As Double
num = 312.501
MsgBox Format(num, "##,##0.000")
MsgBox Format(num, "##,##0.00")
End Sub
Con esa prueba
el 1er msj muestra 312.501
y el 2do msj 312.50
Que serian los valores de un numero "formateado" para mostrar decimales
La misma prueba pero declarando "num" como String me arroja exactamente los mismos resultados.
Espero con esto hayamos resuelto tu problema