Macro récupérant l'année d'une date et bascule vers l'onglet de même nom...

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

Kronos

XLDnaute Nouveau
Bonjour,

je suis un grand débutant en macros Excel 2007....et malgré mes recherches sur différents forums, je sèche sur un problème sans doute très simple.

En cellule J1, j'ai une date au format mm/dd/yyyy par exemple 10/28/2009. Cette date peut changer selon ce que rentre l'utilisateur.

Je voudrais avec une macro pouvoir récupérer l'année dans une variable ( 2009 ) pour ensuite ouvrir automatiquement l'onglet de la feuille excel qui s'intitule 2009.
Si par exemple on tape en J1 07/24/2010 , la macro doit pouvoir activer l'onglet "2010".

Voilà où j'en suis dans cette macro sans pouvoir aller plus loin sans votre aide:

J'ai testé ça dans le code mais sans succès...🙁

Sheets(a).Activate


Code:
Sub Test()
Dim Dte As Date
Dim a As Integer
Dim Date1 As Date


 
Dte = DateValue(Range("J1"))
j = Day(Dte)
m = Month(Dte)
a = Year(Dte)
 
MsgBox " - année: " & a

If a = 2009 Then

Sheets("2009").Activate

End If

End Sub

Merci pour vos conseils...
 
Re : Macro récupérant l'année d'une date et bascule vers l'onglet de même nom...

Magnifique, c'est exactement ce code qu'il me faut.

De cette manière, quelque soient les procédures de la macro, je peux toujours activer les bonnes feuilles sans erreurs...

j'ai testé ce code et c'est tout bon:
Merci 🙂

Code:
Sub Test4()

Sheets(CStr(Year(Sheets("Feuil2").Range("J1").Value))).Activate
MsgBox "F2"

Sheets(CStr(Year(Sheets("Feuil2").Range("L1").Value))).Activate
MsgBox "F3"

Sheets(CStr(Year(Sheets("Feuil2").Range("J1").Value))).Activate
MsgBox "F4"
End Sub
 
Bonjour,
C'est génial tout ça moi je cherche à faire presque pareil mais c'est le mois que je dois prendre pour ouvrir l'onglet suivant la date du jour avec la formule =aujourdhui()
J'ai regardé le code et j'ai voulu mettre ça mais ça ne marche pas...
Dim Dte As Date
Dim m As Variant
Dim Date1 As Date
Dte = DateValue(Range("L1"))
j = Day(Dte)
m = CStr(Month(Dte))
a = CStr(Year(Dte))
Sheets(m).Activate

Quelqu'un pour m'aider ?
Merci
 
Bonjour à tous.

Petite astuce. Sur la partie gauche à côté du premier onglet (flèches), faire un clic droit et normalement les feuilles apparaissent classées dans l'ordre de présentation et vous pouvez faire votre sélection.
Utile quand on gère beaucoup de feuilles sur un même classeur.

Cdlt
thierry
 
- 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

  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
253
Réponses
9
Affichages
935
Réponses
22
Affichages
3 K
Retour