2 votes

Comment obtenir les n premières valeurs non nulles d'une ligne ?

J'ai actuellement cette formule, mais elle renvoie les valeurs non nulles dans l'ordre inverse de celui que je souhaite.

Voici la formule :

=INDEX($R275:$BE275,LARGE(IF($R275:$BE275<>0,COLUMN($R275:$BE275)- MIN(COLUMN($R275:$BE275))+1),COLUMNS($A:A)))

Cela renvoie la première valeur non nulle de la colonne BE en regardant en arrière vers R, alors que je voudrais que cela fonctionne dans l'autre sens, la première instance de la droite vers la gauche. Lorsque j'ébauche la formule vers la droite, je veux qu'elle prenne la valeur non nulle suivante, de droite à gauche.

Si je parvenais à résoudre ce problème, ainsi qu'à retourner l'en-tête de la colonne, ce serait formidable.

1voto

James Points 180

Capture d'écran/ aquí se référer.

La formule que vous avez fournie renvoie la dernière valeur non nulle, ce qui est également ce que vous essayez de trouver :

"Je veux... la première instance de droite à gauche."

Pour éviter toute ambiguïté, je propose des solutions pour la première occurrence (et l'intitulé correspondant), ainsi qu'une méthode révisée pour déterminer la dernière occurrence (ou la première occurrence "de droite à gauche").

Première occurrence ( travailler de gauche à droite )

La fonction peut être simplifiée de manière significative comme suit :

=INDEX(A2:H2,0,MATCH(1,--(A2:H2<>0),0))

First occurrence - working from left to right

Titre correspondant :

=INDEX($A$1:$H$1,0,MATCH(1,--(A2:H2<>0),0))

Selon @ScottCraner, cela fonctionne également (bien qu'utilisant la même fonction inutilement longue) :

=INDEX($R275:$BE275,SMALL(IF($R275:$BE275<>0,COLUMN($R275:$BE275)- MIN(COLUMN($R275:$BE275))+1),COLUMNS($A:A)))

Dernière occurrence

Fonction révisée à prendre en compte (nécessite une version d'Excel compatible avec Office 365, et une personnalisation pour renvoyer l'intitulé correspondant).

=LET(reverse,INDEX(A2:H2,0,SEQUENCE(1,COUNTA(A2:H2),COUNTA(A2:H2),-1)),INDEX(reverse,MATCH(1,--(reverse<>0),0)))

First occurrence - working from right to left

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X