Don't have excel but MarinerCalc Help says the width of the cell determines the display of any number. However, under "Precision->Decimal->Fixed", one can set a value between
only -15 and +15. I get basically the same results as you: 12345678901234 displays correctly as 12,345,678,901,234. But 123456789012345 displays in scientific notation. When the precision is set to +15, 12345678901234.567890 displays as 12,345,678,901,235.000000000000000, obviously rounded up but still not displaying 15 'actual' values.
I suppose the calculations and display of numbers had to have some limit to save bytes. And we all know that Mr. Bill figured 640k should be enough for anyone!