Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2021 Revenir à la dernière feuille "Créée"

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous

LOL, en voilà une bien bonne
Je cherche à revenir ou à activer la dernière feuille que j'ai crée...

Particularité :
La feuille crée à le nom de Feuil1 et ensuite je la renomme pour qu'elle ait le nom de mon Client
Pour l'exemple : "A moi les petites Olé Olé P" ou "A moi les p'tits mectons"

Besoin
APRES AVOIR CREE MA NOUVELLE FEUILLE…
Jai activé plusieurs feuilles à la suite et je suis sur une autre feuille active

J'ai besoin de revenir (activer) ma dernière feuille créée soit : "A moi les petites Olé Olé P"ou "A moi les p'tits mectons" selon le nom donné

Je sais comment revenir sur la feuille activée précédemment
Mais je ne trouve rien sur le net pour revenir à la dernière feuille créée

Si mon sujet retient votre attention
Pour test et pour vous expliquer ce que je fais, voici mes actions
:
A partir de la feuille "Facture"
1 en A1, j'entre le n° du Client, 1 ou 2
2 en L33, j'entre le n° du Pack de 2,3 ou 4
3 ma facture se fait et je clique sur le bouton "Go Facture"
4 mon code m'ouvre une nouvelle feuilX que je renomme (toujours avec mon code) du nom de mon Client

En espérant que vous m'aurez compris, auriez-vous la solution ?
Un grand merci à toutes et à tous,
Je joins le fichier test et je continue mes recherches...
 

Pièces jointes

  • Facturation Mois test4.xlsm
    289.2 KB · Affichages: 4
Dernière édition:
Solution
Bonjour à tous,
sauvegarde son nom dans un nom :
VB:
Sub sauverDerF()
    ' créer et renommer ta feuille puis :
    ActiveWorkbook.Names.Add Name:="dernièreFeuille", RefersToR1C1:=ActiveSheet.Name
End Sub

Sub actDerF()
    Worksheets([dernièreFeuille]).Activate
End Sub

Reste accessible même si le fichier a été fermé
eric

eriiic

XLDnaute Barbatruc
Bonjour à tous,
sauvegarde son nom dans un nom :
VB:
Sub sauverDerF()
    ' créer et renommer ta feuille puis :
    ActiveWorkbook.Names.Add Name:="dernièreFeuille", RefersToR1C1:=ActiveSheet.Name
End Sub

Sub actDerF()
    Worksheets([dernièreFeuille]).Activate
End Sub

Reste accessible même si le fichier a été fermé
eric
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonsoir
NON, je voudrais y revenir par code macro
En fait, j'ai besoin de :
dans le code de Facturation Sub Archivage()
de méroriser la feuille créée et d'y revenir à ces niveaux :
Code:
Impres_feuilles
    [a1].Select
    If [ad53] < 0 Then
    ActiveSheet.Name = Range("f9") & " av"
    End If
    'ICI Nbr RdV - MEMORISER LA FEUILLE CREEE ET RENOMMEE
    If [j33] > 0 Then
    ActiveSheet.Name = Range("f9") & " P"
   
    'ICI Nbr RdV - MEMORISER LA FEUILLE CREEE ET RENOMMEE
    End If
   
    'UN AUTRE CODE SERA ICI
    'ICI NETOUR A LA FEUILLE CREEE ET RENOMMEE
    If [j33] = "" Then
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour eriiic , le Forum
Super et du 1er coup lol
Pourtant mes explications n'étaient peut-être pas très claires.
C'est nickel
J'ai une questions : "Reste accessible même si le fichier a été fermé"
Comment ça fonctionne ?
Merci à toi
 

TooFatBoy

XLDnaute Barbatruc
'ICI Nbr RdV - MEMORISER LA FEUILLE CREEE ET RENOMMEE
Avant de mémoriser la feuille créée, il faudrait la créer...

Ensuite, puisque tu sais où tu dois créer et mémoriser ta feuille, tu n'as plus qu'à faire comme j'ai dit plus haut (mémoriser le nom dans une variable globale), ou faire comme a dit eriiic (attribuer le nom à la feuille dans le gestionnaire de noms).
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bjr et merci à toi pour tes retours

eriiic m'a donné la solution au #Post2​

 

job75

XLDnaute Barbatruc
Bonjour Lionel, le fil,

Perso j'utiliserai l'evènement Workbook_NewSheet et mettrai dans ThisWorkbook :
VB:
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Me.Names.Add "DerFeuille", Sh.Name 'crée le nom défini
End Sub

Sub Activer_DerFeuille()
'se lance par les touches Ctrl+D
On Error Resume Next
With Sheets([DerFeuille])
    .Visible = xlSheetVisible 'si la feuille est masquée
    .Activate
End With
End Sub
Si l'on veut on peut masquer le nom défini avec le code :
VB:
Me.Names.Add "DerFeuille", Sh.Name, Visible:=False 'crée le nom défini masqué
A+
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour Gérard, merci pour ton code
Je testerai ce soir
 

eriiic

XLDnaute Barbatruc
Bonjour,
sauf qu'il renomme la feuille...
eric
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…