VBA Form: Komma in engl. OS als Punkt eingelesen
07.12.2004 13:51:05
Manfred
Habe in meinem deutschen Windows XP ein Excel Programm entwickelt, das mit Forms arbeitet. In diesen Forms habe ich zahlreiche Textboxen, die Werte aus dem Excel-Sheet lesen und damit Berechnungen durchführen. Soweit alles bestens.
Wenn ich das Programm nun auf englischen Betriebssystemen laufen lasse, wird beim Einlesen von Werten aus dem Excel-Sheet hinein in die Textboxen DAS KOMMA einfach AUTOMATISCH IN EINEN PUNKT umgewandelt. Rechnen tut Excel aber (scheinbar/offensichtlich) dennoch mit Komma, daher kommen falsche Werte Raus.
Warum konvertiert Excel die Zahlen in engl. Format, rechnet aber dann in Komma weiter ?
Beispiel:
=========
Konkret hab ich 2 Werte im Sheet (Speed, Distance). Diese lese ich jetzt in Textboxen der Form ein und will daraus die Duration berechnen und in eine 3te Textbox der Form schreiben. Wenn im Sheet z.B. die Werte 2,3 und 11,5 stehen, stehen in der Form dann die Werte 2.3 und 11.5. Bei der Berechnung ignoriert Excel jetzt den Punkt und rechnet mit 23 und 115 - argh!
Source:
=======
tbDistance.value = cells(row1, col1).value
tbSpeed.value = cells(row1, col2).value
tbDuration.value = tbDistance.value / tbSpeed.value
Ich hab auch schon probiert, das ganze in Double Werte umzuwandeln, aber es ändert nichts. Die einzige Lösung bisher war, die Zelleninhalte ALS TEXT EINZULESEN, aber das ist doch auch keine Lösung, da es dann wieder zu Problemen kommt, wenn in Excel-Sheet Punkt-Werte stehen :-(
Woran kann das liegen? Was soll ich machen?
Vielen Dank, Manfred.