Descargue el fichero: Ordena_un_millon.xlsm
Podemos ordenar un millón de valores numéricos con VBA en un tiempo bastante aceptable.
En mi portatil (i7, 8Gb RAM) cada una de las dos macros tarda 2 segundos aproximadamente.
Sub genera_aleatorios_en_columna_A() Dim i As Long Dim R As Range Dim A Set R = Range("A1:A1000000") A = R Randomize For i = 1 To 1000000 A(i, 1) = Rnd Next i R = A End Sub Sub ordena_columna_A() Columns("A:A").Sort key1:=Range("A1"), _ order1:=xlAscending, Header:=xlNo End Sub
Nota
La líneaR = A
equivale a
Range("A1:A1000000") = A