i += i; verdoppelt den i-Wert bei jedem Schleifendurchgang. War i += 1 gemeint? Welchen Startwert hat i? Es steht zwar Dim i as int = 0, aber das ist syntaktisch falsch, also wohl von Dir schnell hier hingeschrieben. Daher prüfe vor Schleifenbeginn, welchen Wert i wirklich hat.