Long vs. Integer

Once upon a time I read that Excel does not use the Integer data type internally. If you use the Integer data type in your code, Excel will convert it to a Long, so you might as well just use Long. It still produces an overflow error if you get outside the Integer bounds, I’ve noticed.

I haven’t used Integer in years because of this, but now I don’t recall who said it and when. It was certainly in a newsgroup post, but I couldn’t google it very easy. Does anyone know if this is true?

5 Comments

  1. Juan Pablo:

    How’bout this ?

    http://www.webace.com.au/~balson/InsaneExcel/Other.htm

  2. Dick:

    That’s cool. It doesn’t say why, but Long is consistently faster than Integer.

  3. Ivan F Moala:

    Thats because Integers are actually converted in the underlying VB Engine. The compilied code is 32 bit, so using Longs skips the under the hood conversion.

  4. ross:

    InsaneExcel is a cool site, very good kid, check it out, i’ve know about it for time, excel error!

  5. Harald Staff:

    Hi Dick

    I’m the Who. I post it from time to time so I can’t help with a distinct When.

    http://groups.google.com/groups?selm=OH7ThgyyDHA.604%40tk2msftngp13.phx.gbl&output=gplain

    Best wishes Harald

Leave a comment