Récupérer le nom de la feuille précédente

Bonjour à tous ,

Existe-t-il une formule ou code vba pour récupérer le nom de la dernière feuille qui a été ouverte ?

Exemple si je suis dans la feuille "AAA" et qu'après je clique sur la feuille "CCC" j'aimerais que dans une case cela m'affiche AAA via un bouton.

Est-ce possible ça ?

Bonjour,

Déjà répondu...

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    MsgBox (Sh.Name)
End Sub

Code à placer dans ThisWorkbook

@ bientôt

LouReeD

Bonjour,

copie cette ligne dans le haut d'un module,

Public shn As String

et cette macro sur la page de ThisWorkbook,

Private Sub Workbook_SheetDeactivate(ByVal sh As Object)
shn = sh.Name
MsgBox shn
End Sub

Bonjour i20100,

mais pourquoi le shn ?

@ bientôt

LouReeD

mais pourquoi le shn ?

LouReeD

Salut LouReeD,

pour pouvoir l'utilisé dans un autre macro... @+

OK !

Je n'avais pas saisie le reste de sa demande !

@ bientôt

LouReeD

Merci à vous deux

Je n'ai cependant pas bien compris comment je pouvais faire en sorte qu'il m'affiche ça dans la cellule A1 par exemple à l'aide d'un bouton

Et je n'ai pas compris comment insérer ta ligne dans un module. Qu'entends-tu par module ?

Merci à vous deux

Je n'ai cependant pas bien compris comment je pouvais faire en sorte qu'il m'affiche ça dans la cellule A1 par exemple à l'aide d'un bouton

Et je n'ai pas compris comment insérer ta ligne dans un module. Qu'entends-tu par module ?

voici un exemple,

21cedric-test.xlsm (15.46 Ko)

Si vous voulez que l'info se mette dans la cellule A1 de la feuille nouvellement active, alors sans bouton, en automatique avec le fait du changement de feuille :

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    ActiveSheet.Range("A1").Value = Sh.Name
End Sub

Toujours à mettre dans le module ThisWorkbook de votre fichier sous VBA.

L'inconvénient du bouton c'est que si on ne clique pas dessus il n'y a pas de mise à jour de la donnée...

Après tout dépend de la structure de votre fichier et ce pourquoi vous avez besoin de cette information.

@ bientôt

LouReeD

Merci i20100, c'est exactement ce que je voulais !

Merci aussi à toi LouReeD pour l'alternative .

Je connaissais pas les modules. Je vais m'y pencher un peu plus maintenant que je l'ai vu dans ton exemple, merci .

Est-ce possible d'adapter cette formule pour faire en sorte que le nom de la feuille précédente s'affiche uniquement lorsque j'effectue un double-clic sur la case C1 (par exemple) ? :

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    ActiveSheet.Range("C1").Value = Sh.Name
End Sub
Rechercher des sujets similaires à "recuperer nom feuille precedente"