Formule gsheet

Visiteur5475 Messages postés 25 Date d'inscription samedi 8 février 2020 Statut Membre Dernière intervention 22 janvier 2024 - Modifié le 22 janv. 2024 à 21:27
PapyLuc51 Messages postés 4391 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 28 octobre 2024 - 23 janv. 2024 à 06:30

Bonjour à tous,

J'aimerai faire une formule sur gsheet mais je n'y arrive pas.

Je veux que dans la colonne a il y ai un ordre de priorité en fonction de la colonne b.

Exemple si b1 =ok alors a1=1 // a2 = 2 si B2=ok mais si B2 n'est pas égal à ok alors a2 = 1 si b3= ok alors a3 =3 ainsi de suite.

Peut être avec la formule max.. mais sans succès.

=SI(B1="ok"; MAX(A$1:A1) + 1; MAX(A$1:A1))

Pouvez vous m'aider svp.

Merci d'avance.

2 réponses

PapyLuc51 Messages postés 4391 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 28 octobre 2024 1 444
Modifié le 23 janv. 2024 à 04:29

Bonjour,

Dans ta question c'est automatiquement 1 si ce n'est pas "OK" en B.

Qu'en est-il si la cellule B est vide ?

Si je comprends bien la cellule suit la logique des n° de ligne si c'est "OK"

=SI(B1="OK";LIGNE();1) 

ou avec l'option de laisser vide si B est vide 

=SI(B1<>"";SI(B1="OK";LIGNE();1);"")

Si le tableau ne commence pas en A1 alors retirer le nombre nécessaire à la fonction LINGE()

Si ça commence en A2 mettre LIGNE()-1

Cordialement

0
PapyLuc51 Messages postés 4391 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 28 octobre 2024 1 444
Modifié le 23 janv. 2024 à 06:33

RE /

Autre compréhension de la question, tu veux incrémenter le nombre de "OK" dans la colonne B au fur et à mesure de la descente dans le tableau.

Tu ne peux pas mettre ta formule dans la cellule A1 car c'est une référence circulaire.

Je continue a laisser A vide si B l'est aussi

En A1 

=SI(B1<>"";1;"")

en effet si B1 n'est pas vide, quelle que soit la situation (OK ou autre), ça équivaux à 1 

En A2 

=SI(B2<>"";SI(B2="OK";MAX(A$1:A1)+1;1);"") 

ou 

=SI(B2<>"";SI(B2="OK";NB.SI(B$1:B1;"OK")+1;1);"")

Cordialement

0