2016-06-16 1 views
0

J'utilise MODE IF dans Excel, qui semble fonctionner correctement, mais j'ai besoin d'exclure du MODE tous les numéros 2.MODE IFS dans Excel - appliquer des critères à la fonction MODE et exclure un numéro de la série

formule I am using est le suivant:

=IFERROR(MODE(IF($I:$I=I4,$K:$K)),K4) 

entrée avec Ctrl + Maj pour une formule de matrice.

Le bit IFERROR est là pour quand il y a seulement une occurrence d'un nombre.

Quelqu'un pourrait-il me dire comment développer cette formule de sorte que, où le résultat serait normalement un "2", qu'il trouve le nombre le plus élevé suivant à la place?

Un grand merci Rich

Répondre

0

Essayez la formule de tableau suivant **:

=MODE(IF($I1:$I20=I4,IF($K1:$K20<>{2,2},$K1:$K20)))

pour laquelle, il est d'ailleurs pas nécessaire d'inclure une clause IFERROR.

Je vous recommande fortement de ne pas utiliser des références de colonnes entières dans une formule matricielle. Contrairement à COUNTIF, SUMIF, COUNTIFS ou SUMIFS, par exemple, les formules matricielles calculent sur toutes les cellules qui leur sont transmises, que ce soit techniquement au-delà des dernières cellules utilisées dans ces plages ou non. Si, par exemple, vous ne disposez que de données s'étendant jusqu'à la ligne 1000, alors, en référençant la valeur d'une colonne entière, vous forcez Excel à calculer plus d'un million de lignes par rapport à ce qui est réellement nécessaire. dans une formule étonnamment riche en ressources. Et c'est juste pour un exemple de cette formule. Avec certaines fonctions, vous pouvez obtenir des références sur des colonnes entières sans nuire aux performances, mais pas sur les fonctions qui fonctionnent sur des baies, telles que AGGREGATE, SUMPRODUCT et toute construction nécessitant un CSE. En tant que tel, vous devez choisir une limite supérieure convenablement faible, mais suffisante, pour la rangée de fin référencée ou, encore mieux, rendre vos plages dynamiques, de sorte qu'elles s'ajustent automatiquement à mesure que vos données augmentent/se contractent. J'ai choisi ici une référence de 20 lignes de fin, que vous pouvez évidemment modifier pour répondre à vos besoins, mais attention à ne pas le rendre trop arbitrairement grand (et certainement ne pas référencer des colonnes entières!), Puisque, Comme mentionné, pour chaque cellule supplémentaire référencée, un calcul supplémentaire sera nécessaire.

Cordialement

** formules de tableau ne sont pas entrés de la même manière que les formules « standard ». Au lieu d'appuyer simplement sur ENTER, vous devez d'abord maintenir CTRL et SHIFT enfoncés, et seulement ensuite appuyer sur ENTER. Si vous l'avez fait correctement, vous remarquerez qu'Excel place les accolades {} autour de la formule (mais n'essayez pas de les insérer manuellement).

+0

Merci pour votre aide, et le conseil au sujet de ma gamme - j'ai changé le range à 1500 lignes et il calcule beaucoup plus vite maintenant! – Surfing

+0

La formule fonctionne, mais je reçois quelques # N/A où la réponse aurait été 2 – Surfing

+0

semble que je reçois les # N/A pour les entrées uniques où la seule valeur est 2 - donc cela a du sens vraiment. Merci beaucoup pour votre aide – Surfing