formule matricielle : =Min(LIGNE

klin89

XLDnaute Accro
Bonsoir le forum,

En B5, j'ai placé cette formule matricielle
Code:
=MIN(LIGNE(A2:A15)*((A2:A15)="Annie"))
Le résultat attendu est 8, soit le numéreo de la ligne de la 1ère occurence trouvée.
Evidemmment le résultat se trouve biaisé et me renvoie 0
Comment ne pas retenir les zéros quand j'évalue la formule, j'ai la nette impression de m'y prendre très mal:p
En B4, j'ai la même syntaxe avec max et le résultat est bien obtenu soit 10 : le numéro de ligne de la dernière occurence trouvée.
Merci d'avance:)
Klin89
 

Pièces jointes

  • Klin89.xls
    32.5 KB · Affichages: 35
  • Klin89.xls
    32.5 KB · Affichages: 40
  • Klin89.xls
    32.5 KB · Affichages: 36

ROGER2327

XLDnaute Barbatruc
Re : formule matricielle : =Min(LIGNE

Bonsoir klin89.


Essayez :​
Code:
=MIN(SI($A$2:$A$15="Annie";LIGNE($A$2:$A$15);1048576))


Bonne nuit !


ROGER2327
#6807


Samedi 7 Absolu 141 (Saint Alambic, abstracteur - fête Suprême Quarte)
28 Fructidor An CCXXI, 9,7765h - maïs
2013-W37-6T23:27:49Z
 

ROGER2327

XLDnaute Barbatruc
Re : formule matricielle : =Min(LIGNE

Suite...


Plus simple :​
Code:
=EQUIV("Annie";$A$1:$A$15;0)
(À valider simplement par Entrée.)​



ROGER2327
#6808


Dimanche 8 Absolu 141 (Absinthe, ci devant Saint Alfred - fête Suprême Tierce)
29 Fructidor An CCXXI, 0,0260h - marron
2013-W37-7T00:03:45Z
 

klin89

XLDnaute Accro
Re : formule matricielle : =Min(LIGNE

Bonjour Roger,
Bonjour à tous, :)

J'ai bien compris la syntaxe de ta 1ère réponse.
Pour couronner le tout, même si cela ne sert à rien, on pourrrait donc remplacer la valeur arbitraire 1048576 (Nbre de lignes maxi Excel)
Pour le Min :
Code:
MAX(LIGNE($A$1:$A$14)+1
Code:
=MIN(SI($A$1:$A$14="Annie";LIGNE($A$1:$A$14);MAX(LIGNE($A$1:$A$14)+1)))
Pour le Max :
Code:
MIN(LIGNE($A$1:$A$14)-1
Code:
=MAX(SI($A$1:$A$14="Annie";LIGNE($A$1:$A$14);MIN(LIGNE($A$1:$A$14)-1)))
Retranscrit en VBA
Code:
x = Evaluate("=MIN(IF($A$1:$A$14=""Annie"",ROW($A$1:$A$14),MAX(ROW($A$1:$A$14)+1)))")
y = Evaluate("=MAX(IF($A$1:$A$14=""Annie"",ROW($A$1:$A$14),MIN(ROW($A$1:$A$14)-1)))")
p = "Annie"
x = Evaluate("=MATCH(""" & p & """,$A$1:$A$14,0)")
x = Evaluate("=MIN(IF($A$1:$A$14=""" & p & """,ROW($A$1:$A$14),MAX(ROW($A$1:$A$14)+1)))")
y = Evaluate("=MAX(IF($A$1:$A$14=""" & p & """,ROW($A$1:$A$14),MIN(ROW($A$1:$A$14)-1)))")
Merci Roger
Klin89
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 352
Messages
2 087 521
Membres
103 575
dernier inscrit
rst