Comment obtenir la dernière valeur non nulle pour une ligne [Résolu/Fermé]

Signaler
Messages postés
8
Date d'inscription
dimanche 27 mars 2016
Statut
Membre
Dernière intervention
3 avril 2016
-
Messages postés
8
Date d'inscription
dimanche 27 mars 2016
Statut
Membre
Dernière intervention
3 avril 2016
-
Dans certaines colonnes de mon tableau contenant des chiffres, je souhaite obtenir la dernière valeur non nulle pour chaque ligne.
par exemple, si dans (C5, E5, G5, I5, K5, M5) j'ai (4, 0, 6, 0, 7, 100, 0), je souhaite obtenir dans O5 : 100.
J'ai essayé avec plusieurs formules, mais en vain... auriez vous une idée? Merci.

4 réponses

Messages postés
16231
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
12 octobre 2020
3 047
Bonjour
si les cellules autres que celles nommées dans la demande sont vides

=INDIRECT(ADRESSE(5;MAX(SI((C5:M5<>"")*(C5:M5<>0);COLONNE(C5:M15)))))

et si les autres cellules contiennent des nombres ou vides
=INDIRECT(ADRESSE(5;MAX(SI((MOD(COLONNE(C5:M5);2)=1)*(C5:M5<>0);COLONNE(C5:M5)))))


Formules matricielles à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule. La formule est alors encadrée automatiquement par des accolades : { formule }



 Michel
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
489
Bonjour,

Avec une fonction personnalisée
Function DerniereValeurNonNulle(Plage As Range)
Dim Cel As Range
For Each Cel In Plage
If Cel.Value > 0 Then DerniereValeurNonNulle = Cel.Value
Next Cel
End Function

A+
Messages postés
8
Date d'inscription
dimanche 27 mars 2016
Statut
Membre
Dernière intervention
3 avril 2016

Merci Gyrus,,
j'ai appliqué votre Function, elle Fonctionne si la plage est sélectionnée en totalité, cad: DerniereValeurNonNulle(C5:M5), mais retourne #VALEUR! si la plage et non continue cad si je fais: DerniereValeurNonNulle(C5;E5;G5;I5;K5;M5)
Comment l'améliorer?

De plus comme le VBA ne m'est pas familier (et vice versa.. :)), je souhaite obtenir une équation excel..
MERCI..
Messages postés
8
Date d'inscription
dimanche 27 mars 2016
Statut
Membre
Dernière intervention
3 avril 2016

MERCI Michel, ça fonctionne...