obtenir une liste sans les cellules vides

F22Raptor

XLDnaute Impliqué
Hello
Sur le fichier joint, vous verrez une liste de devises, avec le cours.
Toutes n'ont pas un cours ... et j'aimerais afficher uniquement la liste des devises qui ont un cours, sans cellules vides.

Evidemment, avec VBA, c'est simple à faire ... trop simple !
Mais je me demande si ce ne serait pas possible avec des formules (matricielles, peut-être, que je connais trop mal).
J'ai cherché, mais en vain ... cela dit, avec les rusés renards qu'il y a ici, je m'attends à tout ! :p
 

Pièces jointes

  • F22Liste.xlsx
    9.5 KB · Affichages: 28
  • F22Liste.xlsx
    9.5 KB · Affichages: 35

F22Raptor

XLDnaute Impliqué
Re : obtenir une liste sans les cellules vides

Excellent ! Je sentais confusément que les formules matricielles pouvaient faire partie de la soluce ... Mais impressionné je suis !
Il faut vraiment que je bosse ce sujet !

Félicitations Toto :cool:
 

F22Raptor

XLDnaute Impliqué
Re : obtenir une liste sans les cellules vides

J'essaie de comprendre la formule.
A l'intérieur de celle-ci, la référence de ligne de l'index vient de :
PETITE.VALEUR(SI($B$1:$B$5<>"-";LIGNE($A$1:$A$5));LIGNE(A1))

Avec en matrice les cours B1:B5, et en "k" de la formule, le numéro de ligne.
Or, je croyais que petite valeur renvoyait la k-ième plus petite valeur, et pas le numéro de ligne de la k-ième ...

Ici, la formule (en matriciel), renvoie bien 1 ; 3 ; 4 c'est à dire les numéros des lignes qui sont remplies.
Je me serais attendu à ce que PETITE.VALEUR retourne 0.71 ; 1.08 ; 1.11 les valeurs elles-mêmes ...

Perplexe, je suis !:confused:


EDIT : je n'avais pas vu ton msg explicatif, qui semble être l'explication à mon interrogation !!!
 

F22Raptor

XLDnaute Impliqué
Re : obtenir une liste sans les cellules vides

Je vois bien le truc, mais malgré tout je bloque sur PETITE.VALEUR

Dans ton fichier explicatif, je vois bien le passage de la colonne C à la colonne D, mais quand je lis le PETITE.VALEUR de la formule matricielle, j'ai du mal à m'y retrouver.

Pour moi, l'écriture est : P.V(matrice ; k) avec k la k-ième plus petite valeur de la matrice.

ici : PETITE.VALEUR(SI($B$1:$B$5<>"-";LIGNE($A$1:$A$5));LIGNE(A1))
j'ai l'impression qu'il y a 3 paramètres : $B$1:$B$5 LIGNE($A$1:$A$5) LIGNE(A1)

J'ai un peu de mal à interpréter P.V dans ce contexte matriciel
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : obtenir une liste sans les cellules vides

Re,

décomposes

colles

=SI($B$1:$B$5<>"-";LIGNE($A$1:$A$5))

dans une cellule, puis sélectionne toute la formule dans la barre de formule et appuies sur F9
là tu vois la matrice résultante de cette formule
La touche F9 aide beaucoup pour les formules matricielles, tu peux ne sélectionner qu'une partie de la formule
Petite.valeur s'applique à cette matrice, et va chercher la plus petite, puis la suivante, etc... les FAUX ne sont pas des valeurs numériques et donc ignorés par PETITE.VALEUR
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 101
Membres
103 116
dernier inscrit
kutobi87