XL 2010 Ouvrir un onglet selon le mois en cours

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

PatFr38

XLDnaute Nouveau
Bonjour.

J'ai des onglets ayant chacun pour nom les 12 mois de l'année (Janvier, Février, [...] Décembre).

J'aimerais avoir un code VBA pour que dès l'activation de l'onglet Janvier, si on n'est pas au mois de Janvier, on se retrouve sur l'onglet du mois en cours (Août au moment où j'écris cette demande d'aide), SVP.

Merci d'avance pour votre aide précieuse.
 
Solution
Le plus simple c'est d'utiliser une MsgBox :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
On Error Resume Next 'si la feuille n'existe pas
If IsDate("1/" & Sh.Name) Then If LCase(Sh.Name) <> Format(Date, "mmmm") Then _
    If MsgBox("Aller sur le mois en cours ?", 4) = 6 Then Sheets(Format(Date, "mmmm")).Activate
If Err Then MsgBox "Mois en cours introuvable !", 48
End Sub
Bonjour.

Alors la solution de job75 fonctionne très bien, bravo à lui 👏💪, sauf que je n'avais pas pensé à un détail important... 🙁 Du coup, il est désormais impossible d'accéder à tous les onglets autres que celui du mois en cours ! 😂 Quand je tente de sélectionner l'onglet Janvier, par exemple, paf ! on saute sur celui d'août, le mois en cours, le job demandé... 😳

J'ai réfléchi à une solution : la seule que j'ai trouvée, ce serait que les onglets des mois autres que celui du mois en cours et antérieurs au mois en cours soient renommés... Par exemple "Janvier" => "Janvier X".

Il y a peut-être une autre solution encore plus simple, car en fait mon souhait initial est d'aller sur l'onglet portant le nom du mois en cours lorsqu'on clique sur un bouton nommé Mois placé sur un onglet nommé Accueil avec un lien hypertexte vers l'onglet du mois en cours. La solution de job75 fonctionne lorsqu'on active un onglet portant le nom d'un des 12 mois de l'année autre que celui en cours...

Est-ce que quelqu'un aurait une idée de code pour cela, SVP ? Merci d'avance. ☺️

A+. 👋
 
Dernière édition:
Le plus simple c'est d'utiliser une MsgBox :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
On Error Resume Next 'si la feuille n'existe pas
If IsDate("1/" & Sh.Name) Then If LCase(Sh.Name) <> Format(Date, "mmmm") Then _
    If MsgBox("Aller sur le mois en cours ?", 4) = 6 Then Sheets(Format(Date, "mmmm")).Activate
If Err Then MsgBox "Mois en cours introuvable !", 48
End Sub
 
- 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
12
Affichages
499
Retour