Derniere cellule non vide sur plusieurs feuilles

  • Initiateur de la discussion Initiateur de la discussion jpp1230
  • 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 !

jpp1230

XLDnaute Nouveau
Bonjour à tous,
Il y a t'il un moyen de récupérer la valeur de la dernière cellule non vide d'une plage de cellule qui ne sont pas dans la même feuille.

Ex : j'ai plusieurs feuille de janvier à décembre avec une valeur différente dans A1

Quand je fais une sommes de toutes ces cellules je met la formule suivante : =SOMME(janvier:juillet!A1) que je récupère dans une feuille nommé Cumul.
En plus de cette somme j'ai besoin de récupérer dans une cellule la dernière cellule A1 rempli de mes feuilles en l’occurrence celle de Mai pour ce mois.
 

Pièces jointes

Re : Derniere cellule non vide sur plusieurs feuilles

Bonjour jpp1230.


VB:
=INDIRECT(CHOISIR(NB(janvier:juillet!A1);"janvier";"février";"mars";"avril";"mai";"juin";"juillet")&"!A1")
peut-être ?​


ℝOGER2327
#7336


Vendredi 20 Palotin 141 (Saint Ti Belot, séide - fête Suprême Quarte)
20 Floréal An CCXXII, 6,0505h - sarcloir
2014-W19-5T14:31:16Z
 
Re : Derniere cellule non vide sur plusieurs feuilles

Bonjour jpp1230,

Si toutes les cellules A1 des feuilles janvier à mai sont renseignées :

Code:
=INDIRECT(TEXTE("1/"&NBVAL(janvier:juillet!A1);"mmmm")&"!A1")
Si ce sont toujours des nombres :

Code:
=INDIRECT(TEXTE("1/"&NB(janvier:juillet!A1);"mmmm")&"!A1")
Edit : hello Roger, pas rafraîchi.

A+
 
Dernière édition:
Re : Derniere cellule non vide sur plusieurs feuilles

Re,

Bien entendu s'il y a des "trous" entre janvier et mai (par exemple en mars), les formules précédentes ne renvoient pas la valeur de la bonne cellule.

On peut alors utiliser cette fonction VBA (dans Module1) :

Code:
Function DerVal(dernier_mois$, adresse$)
Application.Volatile
Dim i As Integer, c As Range
For i = Month("1/" & dernier_mois) To 1 Step -1
  Set c = Sheets(Format("1/" & i, "mmmm")).Range(adresse)
  If c <> "" Then DerVal = c: Exit Function
Next
DerVal = ""
End Function
Formule dans la feuille cumul du fichier joint :

Code:
=DerVal("juillet";"A1")
Noter que la fonction est volatile.

A+
 

Pièces jointes

Re : Derniere cellule non vide sur plusieurs feuilles

Merci pour votre rapidité à tous les deux.
J'ai utilisé la formule de roger qui à l'air de se comporter comme je le désirer.
Je garde les autres solutions sous le coude au cas ou.
merci encore
 
Re : Derniere cellule non vide sur plusieurs feuilles

Job, sur le classeur que j'ai joint ta formule marche très bien mais ce n'est pas le cas sur mon fichier.
Je ne comprend pas pourquoi ?
Je te joint le fichier original pour voir si c'est une erreur de ma part.
Les cases ou j'utilise cette formule sont dans l'onglet cumul avec un fond rouge
 

Pièces jointes

Re : Derniere cellule non vide sur plusieurs feuilles

Bonjour
Coucou Roger 😉, Job75 😉

Je ne vois pas de différence de fonctionnement entre les 2 formules : cela se réfère à Avril dans les deux cas et l'adresse étant donnée sous forme texte, il y a le même ajustement à faire.

On peut la dynamiser INDIRECT ainsi
=INDIRECT(TEXTE("1/"&NB(Janvier:Juillet!T78);"mmmm")&"!L"&LIGNE()-2&"C"& COLONNE();0)
pour faciliter la recopie
 
Re : Derniere cellule non vide sur plusieurs feuilles

Bonjour jpp1230, hello chris 🙂

Où est le problème 😕

Vous utilisez la formule de Roger2327 et elle fonctionne très bien.

Et les miennes fonctionneraient aussi bien.

A+
 
Re : Derniere cellule non vide sur plusieurs feuilles

Re,

OK ta formule "dynamique" chris.

On peut aussi utiliser la fonction CELLULE :

Code:
=INDIRECT(TEXTE("1/"&NB(Janvier:Décembre!T78);"mmmm!")&CELLULE("address";T78))

Edit : sur version française on peut écrire "adresse" mais "address" fonctionne sur toutes versions.

Tandis que ta formule chris ne fonctionne que sur version française.

Sur version anglaise il te faudra :

Code:
=INDIRECT(TEXTE("1/"&NB(Janvier:Juillet!T78);"mmmm")&"!R"&LIGNE()-2&"C"& COLONNE();0)
A+
 
Dernière édition:
Re : Derniere cellule non vide sur plusieurs feuilles

Merci pour toutes ces infos, j'ai cependant un problème car la formule ne fonctionne pas toujours correctement.
Le problème doit être simple pour quelqu’un qui connait très bien mais je ne suis pas un grand informaticien.
J'ai essayé de regarder du coté des format de cellule sans plus de résultat.
La formule de roger fonctionne très bien sur la partie sur fond vert de T80 à T99 sur l'onglet cumul.
La formule de Job me marque Nom? comme sur la cellule T106 sur fond rouge.
Dans la partie sur fond rouge de T106 à T113 la formule ne fonctionne plus, elle me prend l'avant dernière valeur et non la dernière.
Merci à tous pour votre aide
 

Pièces jointes

Re : Derniere cellule non vide sur plusieurs feuilles

Re,

Ma formule en Cumul!T108 renvoie bien la cellule Avril!T106...

Quant à la fonction DerVal vous avez protégé le VBA 😕

Le code doit être placé dans un module standard.

A+
 
Re : Derniere cellule non vide sur plusieurs feuilles

Bonjour
...
OK ta formule "dynamique" chris.

On peut aussi utiliser la fonction CELLULE :

Code:
=INDIRECT(TEXTE("1/"&NB(Janvier:Décembre!T78);"mmmm!")&CELLULE("address";T78))

Edit : sur version française on peut écrire "adresse" mais "address" fonctionne sur toutes versions.

Tandis que ta formule chris ne fonctionne que sur version française.
..

J'achète ! Je n'y pense pas toujours à CELLULE : je vais me soigner ! 😱
 
- 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

Discussions similaires

Réponses
4
Affichages
100
Retour