¿Cómo contar las compras acumuladas diarias de cada cliente en Excel?
set d = CreateObject(" scripting . diccionario ")
arr = Range("b2:d12 ")
Para x = 1 a límite inferior (arr)
d(arr(x, 1)& "-" & arr(x, 2)) = d(arr(x, 1)& "- "& Arr(x, 2))+arr(x, 3)' conecta las columnas que deben resumirse.
Siguiente x
arr1 = d .key
Para y = 0 al valor límite inferior (arr1)
Arr3 = Dividir ( arr1(y), "-" 'Dividir la fecha conectada y las columnas de codificación.
Arr2(y+1, 1) = arr3(0)'Dividir y poner en la matriz Arr2.
Arr2(y+1,1) = arr3(0)' p>
arr2(y + 1, 2) = arr3(1)
Próximo año
Rango ("e2"). ) = arr2
Rango ( "G2") . Cambiar tamaño ( d . recuento ) = aplicación ( d . elementos ) 'resultados en la columna E: G . p>
Para este problema, si los datos tienen 10.000 filas, la fórmula se ejecutará muy lentamente. VBA para 10.000 filas tardará entre 1 y 2 segundos.