Sag mir wo die Punkte sind? – wo sind sie geblieben …

Heute in der VBA-Schulung hat ein Teilnehmer etwas Interessante ausprobiert und festgestellt:

Eine InputBox gibt einen String zurück. Wandelt man ihn mit CInt in eine Integerzahl um oder übergibt ihn an eine vom Typ Integer* deklarierte Variable, so wird der eingegebene Wert 1.5 als 15 zurückgegeben. Ich hätte gedacht, dass 1.5 als Datum (01.05.2016) interpretiert wird. Nein! – Auch jeder andere Wert mit einem Punkt bekommt diesen gelöscht: Punkt ist weder Dezimaltrennzeichen, Tausendertrennzeichen noch Datumstrennzeichen. Erstaunlich, nicht?

Punkte verschwinden

Punkte verschwinden

*) Übrigens auch bei allen anderen Zahlenformaten: Byte, Long, Single, Double und Currency