Affiche la dernière valeur d'une colonne

  • Initiateur de la discussion Initiateur de la discussion GuyErick
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

G

GuyErick

Guest
Bonjour,
Je suis à la recherche de la formule pour afficher dans une case prédeterminée, la dernière valeur d'une colonne dans un tableau. Ensuite, je voudrai afficher dans une autre case, la valeur de la première case de cette ligne (celle ou je viens d'extraire la valeur.
Merci de me répondre afin de pouvoir continuer ma feuille de calcul.
Bon WE.
 
Bonsoir,
Je ne comprend la formule, je pensais à une autre:
BDMAX(base_de_données;champ;critères)
mais je n'arrive pas à la faire fonctionner.
Par contre la tienne ne fonctionne pas non plus.
Pour la 2ème question, je l'ai résolu en faisant l'application sur la première colonne. sachant que la case de la ligne ne se remplie que si il y a une données sur la ligne.
Est ce que le fait d'avoir les cellules remplies pas une fonction, cela bloque ta formule?
Merci de répondre.
 
Bonsoir

Une formule matricielle (à valider par les touches Ctrl+Shift+Entrer), les cellules vides sont ignorées.
=MAX(NON(ESTVIDE(B1:B100))*LIGNE(B1:B100))

Attention la formule matricielle n'aime pas les déclaration de colonne entière.

@+Jean-Marie
 
Bonsoir,
Merci pour cette formule, mais c'est presque cela. En fait, je veux la valeur contenue dans la première case de la dernière ligne remplie.
Ta formule ne me donne que le numéro de la dernière ligne remplie.
Merci qu'en même, je la note car je pense qu'elle pourra me servir dans une prochaine applic.
Si toutefois tu es toujours en ligne et que tu as une réponse, cela m'interresse.
@+
GE
 
Re...

Si tu regardes dans la barre d'outils formule, dans la zone d'affichage de la formule, tu dois voir avant le signe = et à la fin de la formule des paranthèses { }. Elles indiquent que la cellule est une formule matricielle.
Si tu ne les vois pas, c'est que tu n'as pas validé la formule par les trois touches Crtl+Shift+entrer.

@+Jean-Marie

PS : Ecrire en majuscule, correspond à crier
 
Bonsoir JeanMarie,

Je te joins un exemple qui va peut-être répondre à tes attentes.

Magoo 🙂 [file name=DeMagoo.zip size=26545]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/DeMagoo.zip[/file]
 

Pièces jointes

Bonjour Jean marie,
Excuses moi pour les majuscules, (je ne connaissais pas la signification) je ne pratique les forums que récemmement. Je suis resté en majuscules sans penser à mal.
J'ai bien vu ton exemple, mais il ne correspond pas au mien, je ne suis pas bon en explications. [file name=Exemple.zip size=8176]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Exemple.zip[/file]
 

Pièces jointes

Bonjour

Comme dans ton exemple tu n'as pas cellule non vide entre plusieurs blocs, tu peux mettre dans la cellule B11 cette formule
=NBVAL(Feuil1!C:C)

Dans la cellule B14, tu as fais une erreur, tu demandes de retourner la valeur de la mauvaise colonne, dans la plage A:W, la 1ère colonne (3ème argument de la fonction INDEX) est la colonne A et pas la B.
Soit tu changes la plage en B:W ou la valeur à 2. Ce qui donne
=INDEX(Feuil1!B:W;B11;1)
ou
=INDEX(Feuil1!A:W;B11;2)

Dans la formule B5, LIGNE(Feuil1!B2:B28) retourne dans une matrice le numéro de la ligne (elle aurait ceci {2,3,4,5,6,7.......,35,36,37}), mais la ligne 2 ... de la plage G2:G37 correspond à la cellule G3, tu as donc un décalage d'une ligne.
donc on pourrait écrire ceci,
MAX(NON(ESTVIDE(Feuil1!G2:G37))*LIGNE(Feuil1!B2:B37)-1)
ce qui serait juste, mais il est préférable d'écrire ceci
MAX(NON(ESTVIDE(Feuil1!G2:G37))*LIGNE(Feuil1!B2:B37))-1
il y a une petite nuance. Dans la première, Excel va écrire dans la matrice le résultat de l'opération
{estvide(G2)*Ligne(G2)-1,estvide(G3)*Ligne(G3)-1,estvide(G4)*Ligne(G4)-1,......,estvide(G37)*Ligne(G37)-1}
et dans la deuxième
{estvide(G2)*Ligne(G2),estvide(G3)*Ligne(G3),estvide(G4)*Ligne(G4),......,estvide(G37)*Ligne(G37)}
la soustraction se fera après la fonction MAX et ainsi on évite 36 soustractions.

Ce qui donne la formule.
=INDEX(Feuil1!G2:G37;MAX(NON(ESTVIDE(Feuil1!G2:G37))*LIGNE(Feuil1!B2:B37))-1;1)
J'espère que cette dernière partie ne va pas être trop dure à digérer. Tu as dans les formules matricielles à toute puissance d'Excel dans les calculs.

@+Jean-Marie

Message édité par: JeanMarie, à: 14/03/2005 18:25
 
Bonsoir GuyErick, JeanMarie,

Désolé mon message de la nuit était adressé à GuyErick et non à toi jeanMarie. Je sentais que GuyErick avais un besoin rapide de boucler son tableau et n'avais pas encore acquis les formules matricielles. Maintenant ta solution est plus performante.
Je suis pas toujours frais la nuit :S

Magoo 🙂
 
J'essaie d'utiliser la fontion FREQUENCE d'Excel mais quand je tape simultanément sur MaJ + ENTR + CTRL, c'est le caractère < qui s'affiche et non des accolades. 🙁
Savez-vous pourquoi ?
Par avance merci,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
6
Affichages
195
Réponses
43
Affichages
687
Réponses
7
Affichages
503
Réponses
4
Affichages
238
Retour