Bob Phillips:Presumably it uses an intermediary integer storage.
Don't presume, test. From the immediate window,
? Typename(100 * 35)
Integer
There hasn't been a good reason to default whole numbers to 16-bit integers for nearly 20 years. IIRC, Excel 5, the first version of any of the current Office applications to include VBA, had to run under Windows 3.1 or higher, and Windows 3.1 could only run on 386 or better CPUs, and 386 CPUs are 32-bit chips, VBA should have defaulted to 32-bit integers. But it seems the design whizzes at Microsoft decided to grandfather a good deal of BASICA, er, functionality in VBA.
FWIW, OpenOffice BASIC automatically promotes 1000 * 35 to Double, but leaves 100 * 35 an integer.