XL 2021 touches Ctrl+R pour revenir

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous :)

Dans ce fil : https://excel-downloads.com/threads...son-nom-dans-ma-listbox.20078796/page-3#posts
Gérard (Job75) a répondu #Post36
Son code permet de revenir à la feuille précédente.

Pour mon fichier de travail, toujours dans le même fil, j'utilise le code de TooFatBoy pour atteindre l'onglet à afficher
(Ce code fonctionne très bien, toutefois, je dois faire un aller et retour sur une feuille et de revenir à "Facture" pour l'activer.)

Je reviens à mon besoin
Je n'arrive pas à faire fonctionner le code de Gérard pour revenir à la feuille "Facture" quand je suis sur une autre feuille

Je joins les codes copiés dans mon fichier:
VB:
Private Sub Workbook_Open()
'mon code existant
Worksheets("Facture").Protect Password:="", UserInterfaceOnly:=True
Worksheets("FactCom").Protect Password:="", UserInterfaceOnly:=True

Sheets("Facture").Select
ActiveSheet.Protect Password:="", DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
If Sheets("FactCom").Range("m11") <> "" Then
Dim ret As Integer
ret = MsgBox("Effacer le contenu de FactCom ?", vbYesNo)
If ret = vbNo Then
    Exit Sub
Else
    Efface_Com
End If
End If
End Sub

'Gérard
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
ThisWorkbook.Names.Add "Feuille_Precedente", Sh.Name
End Sub

Sub Retour()
'se lance par les touches Ctrl+R
On Error Resume Next
Sheets([Feuille_Precedente]).Activate
End Sub

'TooFatBoy Feuille Facture
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
If Workbooks.Count = 1 Then Application.Quit Else ThisWorkbook.Close
End Sub

'Gérard Modules
Option Explicit
Dim FeuillePrecedente As String

Sub Aller()
'ROLE : Enregister le nom de la feuille en cours en vu d'y retourner après l'execution d'une macro
FeuillePrecedente = Sheets("Facture").Name
End Sub

Sub Retour()
'ROLE : Retourner à la feuille précédente
Sheets("Facture").Select
End Sub
Auriez-vous la solution ?
Je ne peux pas joindre mon fichier de travail mais si nécessaire, je ferai un fichier test.
Un grand merci à toutes et à tous
:)
 
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bjr TooFatBoy :)
Nickel, j'avais pas pensé au lien.
Merci à toi

Pour mon fichier de travail, toujours dans le même fil, j'utilise le code de @TooFatBoy pour atteindre l'onglet à afficher.

Ton code fonctionne très bien, toutefois, je dois faire un aller et retour sur une feuille et de revenir à "Facture" pour l'activer.)

Saurais-tu comment l'activer à 'louverture du fichier pour éviter l'aller/retour ?
;)
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
C'est bon , j'ai trouvé :
VB:
C'est bon , j'ai trouvé :

VB:
Private Sub Workbook_Open()
Worksheets("Facture").Protect Password:="", UserInterfaceOnly:=True
Worksheets("FactCom").Protect Password:="", UserInterfaceOnly:=True

Sheets("Facture").Select
ActiveSheet.Protect Password:="", DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
If Sheets("FactCom").Range("m11") <> "" Then
Dim ret As Integer
ret = MsgBox("Effacer le contenu de FactCom ?", vbYesNo)
If ret = vbNo Then
    Exit Sub
Else
    Efface_Com
End If
End If
'---------------------------------------------------'
On Error Resume Next
ListBox1.Activate
'---------------------------------------------------'
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.Save
If Workbooks.Count = 1 Then Application.Quit Else ThisWorkbook.Close
End Sub
Nickel :)
 

TooFatBoy

XLDnaute Barbatruc
toutefois, je dois faire un aller et retour sur une feuille et de revenir à "Facture" pour l'activer.)

Saurais-tu comment l'activer à 'louverture du fichier pour éviter l'aller/retour ?
Ca vient du fait que la ListBox n'est pas active à l'ouverture du fichier (et je ne sais pas pourquoi).

Tu peux éventuellement utiliser cette macro qui va ouvrir le fichier sur la feuille "Facture".

VB:
Private Sub Workbook_Open()
    Sheets("Facture").ListBox1.Activate
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 534
Messages
2 089 386
Membres
104 153
dernier inscrit
Pascalmorin