Bascom macht meistens Murks, wenn in einer Rechenoperation auch noch eine Typenkonvertierung erfolgen soll. Beispiel:

Dim a as integer
Dim b as single

geht nicht:
a = 2 * b

geht:
b=b*2
a=b

Gruß MeckPommER