Jag har problem med decimaltecken. När man ställer om (i kontrollpanelen/nationella inställningar) decimaltecken till punkt istället för komma som är standard i svenskt Windows läser mitt program 4.9 som 49, om användaren matat in 4.9 i exempelvis en textbox. Val() funktionen använder sig av punkt som decimal separator. Clng, Cdbl etc använder sig av inställningarna för regional settings. HejProblem med decimaltecken
Om kommatecken används som decimaltecken är det naturligtvis inga problem, men en person utomlands som av andra skäl måste använda punkt som decimaltecken kan ju nu inte använda prgrammet. Vad göra? Använda Replace och ersätta punkt med komma? Känns klumpigt.Sv: Problem med decimaltecken
För att ta reda på Decimal separator tecknet kan du använda API eller följande rad:
sTemp = Format$(0, ".")Sv: Problem med decimaltecken
Så här gör jag till att börja med för att ta reda
på om användaren har komma eller punkt som standard
I Form Load
Dim sep As String
'Här gör jag en test om användaren har
'decimaltecken punkt ( . ) som separaror
sep = Format$(1.5, "#.###")
If Mid$(sep, 2, 1) = "," Then
img1.Tag = "Komma"
Else
img1.Tag = "Punkt"
End If
Sen kollar jag min kontroll.Tag här img1.Tag vid matematik och inmatnig
If img1.Tag = "Komma" Then osv..
Else
osv osv.
Sven