actualisation du nom de feuille dans cellule

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

jpp1961

XLDnaute Junior
Bonjour à tous,
Pour créer un classeur de bon de livraison avec incrémentation automatique d'un N°, j'ai récupèré dans une cellule, par formule, le nom de la feuille. Formule que j'ai récupéré sur ce forum d'ailleurs (un petit merci en passant à l'auteur).

=STXT(CELLULE("nomfichier");TROUVE("(";CELLULE("nomfichier"))+1;20)

Je l'ai modifié pour en faite incrémenter un n°
=DROITE(TEXTE(AUJOURDHUI();"aaaa");2)&"-"&TEXTE(GAUCHE(STXT(CELLULE("nomfichier");TROUVE("(";CELLULE("nomfichier"))+1;20);NBCAR(STXT(CELLULE("nomfichier");TROUVE("(";CELLULE("nomfichier"))+1;20))-1);"000000")
Pour un nom de feuille: Bon de livraison(1)
me donne ex:10-000001
Génial!!!
J'ai enregistré une macro en automatique qui en cliquant sur le bouton Nouveau me copie cette feuille et me la colle. le nom de cette feuille devient: Bon de livraison(2)
ce qui me donne: 10-000002
Mais le hic c'est qu'il y a un problème d'actualisation je suis obligé de faire un double clic sur la feuille pour que la valeur change.Cela se produit à chaque changement de feuille.
Avez-vous une solution pour remédier à ce désagrément

merci d'avance
ps: je joint mon classeur exemple
 

Pièces jointes

Dernière édition:
Re : actualisation du nom de feuille dans cellule

Hello,

Tardivement, mais si j'ai bien saisis, avant de copier la deuxième feuille, colle ce code dans la première feuille "Bon de Livraison(1)"
Code:
Private Sub Worksheet_Activate()

    Calculate

End Sub
Donc, il copiera aussi ce code dans chaque nouvelle feuille et avec le Calculate il fera le calcul en activant la feuille.

Tu peux aussi remplacer cette ligne dans ta Macro1... Si tu veux !
Code:
    ...
    Sheets("Bon de Livraison(1)").Copy After:=[COLOR="Red"][B]Sheets(1)[/B][/COLOR]
    ...
par celle-ci
Code:
    ...
    Sheets("Bon de Livraison(1)").Copy after:=[B][COLOR="Green"]Worksheets(Worksheets.Count)[/COLOR][/B]
    ...
Ce code te placera les feuilles dans l'ordre.

Voili vais me coucher, bonne nuit à toutes et tous !
 
Re : actualisation du nom de feuille dans cellule

Hello,

Tardivement, mais si j'ai bien saisis, avant de copier la deuxième feuille, colle ce code dans la première feuille "Bon de Livraison(1)"
Code:
Private Sub Worksheet_Activate()

    Calculate

End Sub
Donc, il copiera aussi ce code dans chaque nouvelle feuille et avec le Calculate il fera le calcul en activant la feuille.

Tu peux aussi remplacer cette ligne dans ta Macro1... Si tu veux !
Code:
    ...
    Sheets("Bon de Livraison(1)").Copy After:=[COLOR="Red"][B]Sheets(1)[/B][/COLOR]
    ...
par celle-ci
Code:
    ...
    Sheets("Bon de Livraison(1)").Copy after:=[B][COLOR="Green"]Worksheets(Worksheets.Count)[/COLOR][/B]
    ...
Ce code te placera les feuilles dans l'ordre.

Voili vais me coucher, bonne nuit à toutes et tous !

Un peu tardivement aussi, mais merci de tes réponses et de tes diverses solutions. Je vais les mettres en applications.
fait de beaux rêves
 
- 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
3
Affichages
681
Retour