Optimiser nb.si

Le
NewsMic
Bonjour,

Dans un même classeur, j'ai une liste de 5000 numéros différents d'une part
et une série d'envrion 100000 enregistrements qui est uniquement constituée
avec ces 5000 numéros.
Chaque numéro est présent de 0 à x fois dans cette série. Pour comptabiliser
la fréquence de chaque numéro, j'ai utlisé une feuille avec 2 colonnes : en
A, de A2 à A5001, les numéros et en colonne B, la formule :
=nb.si(Feuil1!$A$2:$A$100001;A2)
Le calcul est long. Y a t'il une autre façon plus rapide d'obtenir les
résultats ?
Merci

NewsMic
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Papyjac
Le #17739801
Bonjour NewsMic,

C'est combien long ? quelques secondes, une minute ?

Il te calcule les 5000 formules, et pour chacune, il balaye les 100000
lignes, donc en tout il parcourre 500 000 000 de lignes : ce peut être un peu
long.

Tu peux trier par numéros, puis utiliser la fonction sous-total, mais ce
sera long également, de même qu'un tableau croisé dynamique.

Je pense que le plus efficace serait peut être en VBA, surtout si tes 5000
numéros vont de 1 à 5000, car dans ce cas on peut utiliser le numéro comme
indice dans un tableau


--
Papyjac


"NewsMic" a écrit :

Bonjour,

Dans un même classeur, j'ai une liste de 5000 numéros différents d'une part
et une série d'envrion 100000 enregistrements qui est uniquement constituée
avec ces 5000 numéros.
Chaque numéro est présent de 0 à x fois dans cette série. Pour comptabiliser
la fréquence de chaque numéro, j'ai utlisé une feuille avec 2 colonnes : en
A, de A2 à A5001, les numéros et en colonne B, la formule :
=nb.si(Feuil1!$A$2:$A$100001;A2)
Le calcul est long. Y a t'il une autre façon plus rapide d'obtenir les
résultats ?
Merci

NewsMic





isabelle
Le #17739791
bonjour NewsMic,

oui, tu peut faire un tcd (Tableau croisé dynamique)
"numéros" en champ de ligne
nombre de "numéros" en champ de données

isabelle

NewsMic a écrit :
Bonjour,

Dans un même classeur, j'ai une liste de 5000 numéros différents d'une part
et une série d'envrion 100000 enregistrements qui est uniquement constituée
avec ces 5000 numéros.
Chaque numéro est présent de 0 à x fois dans cette série. Pour comptabiliser
la fréquence de chaque numéro, j'ai utlisé une feuille avec 2 colonnes : en
A, de A2 à A5001, les numéros et en colonne B, la formule :
=nb.si(Feuil1!$A$2:$A$100001;A2)
Le calcul est long. Y a t'il une autre façon plus rapide d'obtenir les
résultats ?
Merci

NewsMic




Publicité
Poster une réponse
Anonyme