Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/01/2011, 11h04   #1
Invité de passage
 
Michaël
Inscription : janvier 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Michaël

Informations forums :
Inscription : janvier 2011
Messages : 4
Points : 1
Points : 1
Par défaut donner la dernière valeur (non-nul) d'une colonne

Bonjour,

Je cherche une formule qui donne la dernière valeur non-nul d'une colonne.

Disons que dans mon fichier j'ai la colonne A remplie de la ligne 1 à 7. Chaque jour une nouvelle valeur s'ajoute sur une nouvelle ligne de la colonne A. Les autres lignes sont remplies de 0.

J'aimerais que la cellule A8 me donnent directement la dernière valeur non-nul de la colonne A. Exemple:

Jour 1:
A
365
375
254
452
0
0
0
452 <-- valeur que la formule devrait donner

Jour 2:
A
365
375
254
452
328
0
0
328 <-- valeur que la formule devrait donner
Micdewe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2011, 12h05   #2
Membre Expert
 
Avatar de rvtoulon
 
Homme Hervé
Agent Technique
Inscription : mars 2009
Messages : 823
Détails du profil
Informations personnelles :
Nom : Homme Hervé
Âge : 36
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Agent Technique
Secteur : Santé

Informations forums :
Inscription : mars 2009
Messages : 823
Points : 1 441
Points : 1 441
Bonjour,
a défault de trouver une formule miracle, je ne connais pas assez bien les fonctions d'Excel, , tu peux faire ta propre fonction en vba. Pour ton cas, voici ce que tu pourrais faire:
dans l'éditeur VBA dans un module standard tu copie ce code :
Code :
1
2
3
4
5
6
7
8
9
Function Dercel(plage As Range) As Integer
Application.Volatile
For Each cel In plage
If cel = 0 Then
Dercel = cel.Offset(-1, 0)
Exit For
End If
Next cel
End Function
et dans ta cellule A8 cette formule pour la plage A1:A7 :
__________________
@+

Si vous avez trouvé la solution à votre problème n'oubliez pas d'appuyer sur
Et n'oubliez pas de voter en appuyant sur si ce message a repondu à vos attentes.
Ou sur si ce n'est pas le cas
rvtoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2011, 13h46   #3
Invité de passage
 
Michaël
Inscription : janvier 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Michaël

Informations forums :
Inscription : janvier 2011
Messages : 4
Points : 1
Points : 1
Merci rvtoulon pour ta proposition.

J'aurais du préciser que je préfère ne pas utiliser de macro (c'est pas que je ne sais pas, mais c'est que je ne peux pas le faire sur ce fichier - la direction préfère la garder "macro-free").
Micdewe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2011, 16h05   #4
Membre habitué
 
Dominique
Inscription : mars 2009
Messages : 282
Détails du profil
Informations personnelles :
Nom : Dominique

Informations forums :
Inscription : mars 2009
Messages : 282
Points : 111
Points : 111
Bonjour;
peut etre ceci :
Code :
=INDIRECT("A"&NB.SI.ENS(A1:A7;"<>0"))
cordialement
dodo28 est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h54.


 
 
 
 
Partenaires

Hébergement Web