OVH Cloud OVH Cloud

sélection de l'onglet en fonction de...

10 réponses
Avatar
Sabian
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans=20
l'ann=E9e...
Maintenant ce que je voudrais faire, c'est que si j'ouvre=20
mon fichier le 29 f=E9vrier, ben il me tombe directement sur=20
l'onglet f=E9vrier, et si je l'ouvre le lendemain, c-=E0-d le=20
1er mars, ben vous avez certainement compris ce que je=20
voudrais...=20

Merci pour les infos... et bonne st-valentin... (m=EAme ceux=20
qui sont solo)

Sabian

10 réponses

Avatar
garnote
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian
Avatar
Sabian
Hello garnote...

Mhmm ça avait l'air pas mal, mais il foire au moment ou le
code pas sur le onglet = Format(Month(Now), "mmmm")

Merci quand meme


-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.



Avatar
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci



-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.



Avatar
garnote
J'allais le dire !
Je croyais que tes onglets étaient nommés
janvier, février, ...

Private Sub Workbook_Open()
onglet = Month(Now)
Sheets(onglet).Activate
End Sub

Serge

a écrit dans le message de news:
e90b01c3f174$4bb85da0$
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci



-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.



Avatar
michdenis
Bonjour Garnote,


a = Month(Now) ' Retourne la valeur 2

onglet = Format(Month(Now), "mmmm")
'Retourne Janvier et non février ....
la valeur 2 représente la date : 2 janvier 1900 ou 1904

Si tu essaies ceci : tu devrais obtenir le nom complet du mois de la date courante.
a = Format(DateSerial(Year(Now), Month(Now), Day(Now)), "mmmm")



Salutations!


"garnote" a écrit dans le message de news:O8MWb.33906$
J'allais le dire !
Je croyais que tes onglets étaient nommés
janvier, février, ...

Private Sub Workbook_Open()
onglet = Month(Now)
Sheets(onglet).Activate
End Sub

Serge

a écrit dans le message de news:
e90b01c3f174$4bb85da0$
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci



-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.



Avatar
Frédéric Sigonneau
Bonsoir Denis,


Si tu essaies ceci : tu devrais obtenir le nom complet du mois de la date courante.
a = Format(DateSerial(Year(Now), Month(Now), Day(Now)), "mmmm")


Là, tu te compliques quand même un peu la vie, non ?

a=Format(Date,"mmmm")

devrait suffire, AMA.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

"garnote" a écrit dans le message de news:O8MWb.33906$
J'allais le dire !
Je croyais que tes onglets étaient nommés
janvier, février, ...

Private Sub Workbook_Open()
onglet = Month(Now)
Sheets(onglet).Activate
End Sub

Serge

a écrit dans le message de news:
e90b01c3f174$4bb85da0$
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci

-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.





Avatar
Frédéric Sigonneau
Bonsoir,


Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci


Attention à cette solution, qui n'en est peut-être pas vraiment une. Je
m'explique. Month(Now) renvoie, au jour d'aujourd'hui, 2. L'instruction

Sheets(Month(Now)).Activate
équivaut donc à
Sheets(2).Activate

ce qui sélectionne la deuxième feuille du classeur (qu'elle soit nommée février,
02, february ou peu importe quoi) et ce qui peut tout à fait te convenir si tu
es certain que les 12 premières feuilles de ton classeur seront toujours celles
des 12 mois de l'année, en ordre croissant de janvier à décembre.

Si tu n'es pas certain de ça, essaie une autre approche, par exemple celle
proposée par Serge et Denis, qui vise à activer la feuille qui porte le nom du
mois voulu.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.





Avatar
garnote
Heureusement qu'on nous surveille pour
nous éviter de répandre des inepties
sur la Terre :-)))

Merci de cette mise au point,

Serge


"michdenis" a écrit dans le message de news:
e7KOr$
Bonjour Garnote,


a = Month(Now) ' Retourne la valeur 2

onglet = Format(Month(Now), "mmmm")
'Retourne Janvier et non février ....
la valeur 2 représente la date : 2 janvier 1900 ou 1904

Si tu essaies ceci : tu devrais obtenir le nom complet du mois de la date
courante.

a = Format(DateSerial(Year(Now), Month(Now), Day(Now)), "mmmm")



Salutations!


"garnote" a écrit dans le message de
news:O8MWb.33906$

J'allais le dire !
Je croyais que tes onglets étaient nommés
janvier, février, ...

Private Sub Workbook_Open()
onglet = Month(Now)
Sheets(onglet).Activate
End Sub

Serge

a écrit dans le message de news:
e90b01c3f174$4bb85da0$
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci



-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.








Avatar
garnote
J'aime mieux celle-là :-)))

Serge


"Frédéric Sigonneau" a écrit dans le message
de news:
Bonsoir Denis,


Si tu essaies ceci : tu devrais obtenir le nom complet du mois de la
date courante.


a = Format(DateSerial(Year(Now), Month(Now), Day(Now)), "mmmm")


Là, tu te compliques quand même un peu la vie, non ?

a=Format(Date,"mmmm")

devrait suffire, AMA.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

"garnote" a écrit dans le message de
news:O8MWb.33906$


J'allais le dire !
Je croyais que tes onglets étaient nommés
janvier, février, ...

Private Sub Workbook_Open()
onglet = Month(Now)
Sheets(onglet).Activate
End Sub

Serge

a écrit dans le message de news:
e90b01c3f174$4bb85da0$
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci

-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.









Avatar
michdenis
Bonsoir Frédéric,

D'accord avec toi. C'était seulement pour continuer dans le même esprit que Serge avec Month() !!!

;-))


Salutations!


"Frédéric Sigonneau" a écrit dans le message de news:
Bonsoir Denis,


Si tu essaies ceci : tu devrais obtenir le nom complet du mois de la date courante.
a = Format(DateSerial(Year(Now), Month(Now), Day(Now)), "mmmm")


Là, tu te compliques quand même un peu la vie, non ?

a=Format(Date,"mmmm")

devrait suffire, AMA.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

"garnote" a écrit dans le message de news:O8MWb.33906$
J'allais le dire !
Je croyais que tes onglets étaient nommés
janvier, février, ...

Private Sub Workbook_Open()
onglet = Month(Now)
Sheets(onglet).Activate
End Sub

Serge

a écrit dans le message de news:
e90b01c3f174$4bb85da0$
Parcontre si je remplace le
onglet = Format(Month(Now), "mmmm")
par
onglet = (Month(Now)

ça marche... merci

-----Message d'origine-----
Bonjour Sabian,

Peut-être que :

Private Sub Workbook_Open()
onglet = Format(Month(Now), "mmmm")
Sheets(onglet).Activate
End Sub

Serge

"Sabian" a écrit dans le message de news:
f30e01c3f16f$1638a220$
'alut tuuuutti...

Je me suis fait un petit prog en vba sur excel.
Dans ce prog, j'ai autant d'onglet que de mois dans
l'année...
Maintenant ce que je voudrais faire, c'est que si j'ouvre
mon fichier le 29 février, ben il me tombe directement sur
l'onglet février, et si je l'ouvre le lendemain, c-à-d le
1er mars, ben vous avez certainement compris ce que je
voudrais...

Merci pour les infos... et bonne st-valentin... (même ceux
qui sont solo)

Sabian


.