Вы не можете установить целое число vb6 равным 40000, так как они имеют 16-битные числа со знаком, поэтому максимальное значение равно +32767.
Long
- это 32-битный тип.
Однако, как предостережение, если бы вы были:
Dim lngID As Long
lngID = 4 * 10000
Вы по-прежнему получите переполнение, поскольку по умолчанию литеральные числа равны Integer, чтобы исправить это, просто наберите один из них длиннее с &
или приведите его так же долго, используя CLng()
:
Dim lngID As Long
lngID = 4 * 10000&
lngID = 4 * CLng(10000)
Обновление