OVH Cloud OVH Cloud

Renvoyer la dernière valeur d'un colonne conditionnellement

24 réponses
Avatar
FredericB
Bonjour à tous,

Je recherche de l'aide pour une formule (non pas une macro) qui me permettra de :

Rechercher et d'afficher la valeur de la dernière cellule non vide d'une colonne (tous des valeurs textes) seulement si la cellules qui se trouve à sa gauche est vide (tous des valeurs en nombres).

Voici un exemple :

Je recherche la dernière valeur de la colonne B
seulement si la valeur située a sa gauche est vide.

Colonne A___Colonne B

200________Pomme
325______________
___________Banane
301________Fraise
___________Patate

Dans ce cas-ci, la valeur devait être Patate, puisqu'il s'agit de la dernière valeur de la Colonne B et qu'a sa gauche la cellule est vide.

A noter que la Colonne A et la Colonne B peuvent contenir des cellules vides.

Je suis en mesure de trouver la dernière valeur de la Colonne B avec la fonction :

=RECHERCHE("zz";B:B)

Ou bien la dernière valeur de la Colonne A :

=RECHERCHE(9^9;A:A)

Mais je suis incapable de lier les deux.

Merci d'avance de votre aide

Frederic

10 réponses

1 2 3
Avatar
DanielCo
Bonjour,
Formule matricielle (valider avec Ctrl+Maj+Entrée) :
=INDEX(B1:B100;MAX(SI((B1:B100<>"")*(A1:A100<>"");LIGNE(1:100)));1)
S'il n'y a pas de solution, la formue renvois la dernière valeur.
Daniel


Bonjour à tous,

Je recherche de l'aide pour une formule (non pas une macro) qui me permettra
de




Rechercher et d'afficher la valeur de la dernière cellule non vide d'une
colonne (tous des valeurs textes) seulement si la cellules qui se trouve à sa
gauche est vide (tous des valeurs en nombres).

Voici un exemple :

Je recherche la dernière valeur de la colonne B
seulement si la valeur située a sa gauche est vide.

Colonne A___Colonne B

200________Pomme
325______________
___________Banane
301________Fraise
___________Patate

Dans ce cas-ci, la valeur devait être Patate, puisqu'il s'agit de la dernière
valeur de la Colonne B et qu'a sa gauche la cellule est vide.

A noter que la Colonne A et la Colonne B peuvent contenir des cellules vides.

Je suis en mesure de trouver la dernière valeur de la Colonne B avec la
fonction




=RECHERCHE("zz";B:B)

Ou bien la dernière valeur de la Colonne A :

=RECHERCHE(9^9;A:A)

Mais je suis incapable de lier les deux.

Merci d'avance de votre aide

Frederic
Avatar
fredericb
Le jeudi 17 Octobre 2013 à 10:52 par DanielCo :
Bonjour,
Formule matricielle (valider avec Ctrl+Maj+Entrée) :
=INDEX(B1:B100;MAX(SI((B1:B100<>"")*(A1:A100<>"");LIGNE(1:100)));1)
S'il n'y a pas de solution, la formue renvois la dernière valeur.
Daniel


Bonjour à tous,

Je recherche de l'aide pour une formule (non pas une macro) qui me permettra
de





Rechercher et d'afficher la valeur de la dernière cellule non vide
d'une
colonne (tous des valeurs textes) seulement si la cellules qui se trouve
à sa
gauche est vide (tous des valeurs en nombres).

Voici un exemple :

Je recherche la dernière valeur de la colonne B
seulement si la valeur située a sa gauche est vide.

Colonne A___Colonne B

200________Pomme
325______________
___________Banane
301________Fraise
___________Patate

Dans ce cas-ci, la valeur devait être Patate, puisqu'il s'agit de la
dernière
valeur de la Colonne B et qu'a sa gauche la cellule est vide.

A noter que la Colonne A et la Colonne B peuvent contenir des cellules vides.

Je suis en mesure de trouver la dernière valeur de la Colonne B avec la
fonction





=RECHERCHE("zz";B:B)

Ou bien la dernière valeur de la Colonne A :

=RECHERCHE(9^9;A:A)

Mais je suis incapable de lier les deux.

Merci d'avance de votre aide

Frederic




Merci beaucoup Daniel.

Serait-il possible par contre que s'il n'y a pas de solution, la formule renvoi une valeur vide plutôt que la derniere valeur ?

Merci.

Frederic
Avatar
MichD
Bonjour,

Essaie ceci.

Cette formule retourne le contenu de la dernière cellule de la colonne B
ou la cellule de la même ligne en colonne A est vide. Dans le cas où la
condition n'est pas remplie, elle n'affiche rien

Adapte les plages de cellules correspondantes dans ton application.

Validation matricielle de la formule avec la combinaison des touches : Maj + Ctrl + Enter

=SI(ET(INDEX(B1:B5;MAX(SI(A1:A5="";LIGNE(A1:A5))))<>"";A1<>"");INDEX(B1:B5;MAX(SI(A1:A5="";LIGNE(A1:A5))));"")



MichD
--------------------------------------------------------------
Avatar
Jacquouille
Allo Denis ?
Pour A1:B5

Validé en matricielle : si A5 est vide --> donne B5 --> OK
Si A5 pas vide --> donne B1 ????
Version 2003

Si tu as 30 sec pour éclairer mon neurone.....-))

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
l3p9o2$t74$

Bonjour,

Essaie ceci.

Cette formule retourne le contenu de la dernière cellule de la colonne B
ou la cellule de la même ligne en colonne A est vide. Dans le cas où la
condition n'est pas remplie, elle n'affiche rien

Adapte les plages de cellules correspondantes dans ton application.

Validation matricielle de la formule avec la combinaison des touches : Maj
+ Ctrl + Enter

=SI(ET(INDEX(B1:B5;MAX(SI(A1:A5="";LIGNE(A1:A5))))<>"";A1<>"");INDEX(B1:B5;MAX(SI(A1:A5="";LIGNE(A1:A5))));"")



MichD
--------------------------------------------------------------
Avatar
MichD
Bonjour Jacquouille,

Tu as bien raison, la formule ne fonctionne pas
car j'ai omis que dans les composants matriciels
d'une formule on ne peut pas utiliser le Si(et)

Voici un fichier exemple avec la formule modifiée :
http://cjoint.com/?CJrwVu8aeRB

Et tant mieux si tu en trouves une plus courte!
;-) ... Je dois quitter pour le moment!


MichD
--------------------------------------------------------------
Avatar
MichD
ce fichier serait préférable : http://cjoint.com/?CJrw1c0HI3R



MichD
--------------------------------------------------------------
Avatar
MichD
Une formule sur le même principe que celle du fichier,
mais un peu plus courte :

Validation matricielle,

=SI(ESTERREUR(INDEX(B1:B5;SI(MAX(SI(A1:A5="";
LIGNE(A1:A5)))=0;"";MAX(SI(A1:A5="";LIGNE(A1:A5))))));"";
INDEX(B1:B5;MAX(SI(A1:A5="";LIGNE(A1:A5)))))



MichD
--------------------------------------------------------------
Avatar
DanielCo
Serait-il possible par contre que s'il n'y a pas de solution, la formule
renvoi une valeur vide plutôt que la derniere valeur ?

Merci.

Frederic



Matricielle :
=SI(INDEX(A1:A100;MAX(SI((B1:B100<>"")*(A1:A100="");LIGNE(1:100)));1)<>"";"";INDEX(B1:B100;MAX(SI((B1:B100<>"")*(A1:A100="");LIGNE(1:100)));1))
Daniel
Avatar
Jacquouille
Bonjour Denis
Je crois que j'ai encore été mettre mon doigt où il ne fallait pas.
Cela t'a obligé à faire des heures supp.
Grand merci pour cette précision.
Bon WE
Jacques.



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
l3pj9o$n3p$

Une formule sur le même principe que celle du fichier,
mais un peu plus courte :

Validation matricielle,

=SI(ESTERREUR(INDEX(B1:B5;SI(MAX(SI(A1:A5="";
LIGNE(A1:A5)))=0;"";MAX(SI(A1:A5="";LIGNE(A1:A5))))));"";
INDEX(B1:B5;MAX(SI(A1:A5="";LIGNE(A1:A5)))))



MichD
--------------------------------------------------------------
Avatar
MichD
| Cela t'a obligé à faire des heures supp.

Merci! Comme ça tu ne seras pas surpris lorsque tu recevras
mes honoraires...Tu sais déjà le temps que cela
prend pour éditer une seule formule... Alors?
;-))

MichD
--------------------------------------------------------------
1 2 3