arraysvbaexcel

Fastest way to read a column of numbers into an array


Say if I have a column of numbers (how many of them could vary, but could be anywhere between 1000-10000) and I would like to read all of them into an array in VBA, what is the fastest way of doing so?

Obviously I can create an array of size 10000 and do a for/while-loop but is there any way that's faster than this?


Solution

  • Like this?

    Dim Ar as Variant
    
    Ar = Sheets("Sheet").Range("A1:A10000").Value
    

    If you do not know the last row then you can find the last row using this and then use the above code as

    Ar = Sheets("Sheet").Range("A1:A" & LRow).Value