Jag har två strängar som innehåller decimal värden. Testade lite och detta fungerar: Även om Peters lösning fungerar så rekommenderar jag dig att vara observant på implicita typkonverteringar. VB har ju alltid varit snäll när det gäller automatiska (implicita) typkonverteringar, på gott och på ont, många andra språk (t ex C#) är inte lika förlåtande. Decimal sumering
Hur gör jag för att summera ihop dessa?
Ex:
str1="012,12"
str2="4556,12"
a=str1+str2
Vill även få med decimaltalenSv: Decimal sumering
<code>
Dim a As Double = str1
Dim b As Double = str2
Dim c As Double = a + b
</code>
/PeterSv: Decimal sumering
Min filosofi är att man inte bör utnyttja automatiska, implicita konverteringar utan att alltid visa vad man avser med explicita typkonverteringar. Inte helt sällan så hjälper man kompilatorn också om man preciserar vad som ska ske. Genom att ange typkonverteringarna i nedanstående kod så visar du att du inte vill konkatenera strängarna utan i stället summera värdena.
<code>
Dim d as Double
str1="012,12"
str2="4556,12"
' Två alternativ :
d=cdbl(str1) + cdbl(str2)
d=ctype(str1,double) + ctype(str2,double)
</code>
...och eventuellt lite felhantering runt det hela...