You have the following line in your code:
somme = String.Format("{0:##,##0.000}", CDbl(somme.ToString))
So, you convert the double value to a string, so that you can then convert it back to a double, in order to use it in the call to
String.Format
, which is a bit pointless. But you then use that string to set the value of
somme
, which is declared as a double. All of which makes no sense, so remove that line of code.