Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Patrick,
Si ton séparateur "Date" dans ton panneau de configuration
est réellement le "point", tu n'as pas besoin de la fonction
substitute
Ceci est basé sur les dates à la française : Dimanche étant la
journée 7 de la semaine.
En Amérique, c'est la journée 1 ... à adapter...
'--------------------------
Sub test()
For Each SH In Worksheets
If Weekday(CDate(Application. _
WorksheetFunction.Substitute _
(SH.Name, ".", "/")), vbSunday) = 7 Then
SH.Visible = xlSheetHidden
End If
Next
End Sub
'--------------------------
Salutations!
"Patrick BASTARD" a écrit dans
le message de news: Bonsoir à
toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Patrick,
Si ton séparateur "Date" dans ton panneau de configuration
est réellement le "point", tu n'as pas besoin de la fonction
substitute
Ceci est basé sur les dates à la française : Dimanche étant la
journée 7 de la semaine.
En Amérique, c'est la journée 1 ... à adapter...
'--------------------------
Sub test()
For Each SH In Worksheets
If Weekday(CDate(Application. _
WorksheetFunction.Substitute _
(SH.Name, ".", "/")), vbSunday) = 7 Then
SH.Visible = xlSheetHidden
End If
Next
End Sub
'--------------------------
Salutations!
"Patrick BASTARD" <pasdespambastardp@freepasdespam.fr> a écrit dans
le message de news: ulEOTPpJGHA.528@TK2MSFTNGP12.phx.gbl... Bonsoir à
toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Patrick,
Si ton séparateur "Date" dans ton panneau de configuration
est réellement le "point", tu n'as pas besoin de la fonction
substitute
Ceci est basé sur les dates à la française : Dimanche étant la
journée 7 de la semaine.
En Amérique, c'est la journée 1 ... à adapter...
'--------------------------
Sub test()
For Each SH In Worksheets
If Weekday(CDate(Application. _
WorksheetFunction.Substitute _
(SH.Name, ".", "/")), vbSunday) = 7 Then
SH.Visible = xlSheetHidden
End If
Next
End Sub
'--------------------------
Salutations!
"Patrick BASTARD" a écrit dans
le message de news: Bonsoir à
toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur
:-))))) Avec un truc de ce genre (si tes onglets sont tous nommés
avec les mêmes règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur
:-))))) Avec un truc de ce genre (si tes onglets sont tous nommés
avec les mêmes règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierryp
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur
:-))))) Avec un truc de ce genre (si tes onglets sont tous nommés
avec les mêmes règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ
/ AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de
caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba
doit
interpréter le format de la date, VBA utilise le format américain de
date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une
fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans
le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un
certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" a écrit dans le message de news:
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur
:-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les
mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ
/ AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de
caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba
doit
interpréter le format de la date, VBA utilise le format américain de
date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une
fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans
le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un
certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" <thierry@nospam.fr> a écrit dans le message de news:
OzdoFxpJGHA.2040@TK2MSFTNGP14.phx.gbl... Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur
:-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les
mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierryp
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ
/ AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de
caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba
doit
interpréter le format de la date, VBA utilise le format américain de
date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une
fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans
le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un
certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" a écrit dans le message de news:
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur
:-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les
mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ / AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba doit
interpréter le format de la date, VBA utilise le format américain de date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" a écrit dans le message de news:
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur :-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ / AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba doit
interpréter le format de la date, VBA utilise le format américain de date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" <thierry@nospam.fr> a écrit dans le message de news: OzdoFxpJGHA.2040@TK2MSFTNGP14.phx.gbl...
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur :-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierryp
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ / AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba doit
interpréter le format de la date, VBA utilise le format américain de date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" a écrit dans le message de news:
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur :-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour, *Thierryp*
Pas mal pour un début...
Bienvenue au club...
;-)
Je n'ai dû modifier que la définition de année : 2 derniers caractères au
lieu de 4, et cela fonctionne parfaitement, avec la même modification que
j'ai communiquée à Denis, concernant les noms d'onglets "exotiques", mais tu
avais déjà émis les réserves dans ta réponse.
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 2)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
Merci de ton aide.
Je souhaite que cette première contribution soit suivie de nombreuses
autres.
On partage, et on progresse. MaGic' non ?
Bonjour, *Thierryp*
Pas mal pour un début...
Bienvenue au club...
;-)
Je n'ai dû modifier que la définition de année : 2 derniers caractères au
lieu de 4, et cela fonctionne parfaitement, avec la même modification que
j'ai communiquée à Denis, concernant les noms d'onglets "exotiques", mais tu
avais déjà émis les réserves dans ta réponse.
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 2)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
Merci de ton aide.
Je souhaite que cette première contribution soit suivie de nombreuses
autres.
On partage, et on progresse. MaGic' non ?
Bonjour, *Thierryp*
Pas mal pour un début...
Bienvenue au club...
;-)
Je n'ai dû modifier que la définition de année : 2 derniers caractères au
lieu de 4, et cela fonctionne parfaitement, avec la même modification que
j'ai communiquée à Denis, concernant les noms d'onglets "exotiques", mais tu
avais déjà émis les réserves dans ta réponse.
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 2)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
Merci de ton aide.
Je souhaite que cette première contribution soit suivie de nombreuses
autres.
On partage, et on progresse. MaGic' non ?
Bonsoir, *Denis*
Je te confirme que la manière que Thierry a employée pour reconstituer et
tester la date à partir du nom de l'onglet fonctionne chez moi.
VBA 6.3
Version 9969,
VBA : Retail 6.4.8869
Forms3: 11.05709
Bonsoir, *Denis*
Je te confirme que la manière que Thierry a employée pour reconstituer et
tester la date à partir du nom de l'onglet fonctionne chez moi.
VBA 6.3
Version 9969,
VBA : Retail 6.4.8869
Forms3: 11.05709
Bonsoir, *Denis*
Je te confirme que la manière que Thierry a employée pour reconstituer et
tester la date à partir du nom de l'onglet fonctionne chez moi.
VBA 6.3
Version 9969,
VBA : Retail 6.4.8869
Forms3: 11.05709
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ / AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba doit
interpréter le format de la date, VBA utilise le format américain de date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" a écrit dans le message de news:
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur :-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ / AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba doit
interpréter le format de la date, VBA utilise le format américain de date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" <thierry@nospam.fr> a écrit dans le message de news: OzdoFxpJGHA.2040@TK2MSFTNGP14.phx.gbl...
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur :-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierryp
Bonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard
Bonjour Thierry,
Tu y étais presque ...
Ta ligne de code problème....!
If Weekday(CDate(date_onglet), vbSunday) = 1 Then
Une date quand elle est écrite sous forme d'une chaîne de caractère,
excel utilise toujours en vba le format américain des dates ( MM / JJ / AAAA)
Fais ce petit test :
Dim D as String
D = "10/02/06"
Range("A1") = D
Range("A1") = 2 octobre 2006
Dim C as Date
C = "10/02/06"
Range("A2") = C
Range("A2") = 10 février 2006
La raison est simple, lorsque tu présentes en VBA, une chaîne de caractère,
comme tu ne donnes pas d'indication précise sur la manière que vba doit
interpréter le format de la date, VBA utilise le format américain de date par défaut.
Si tu utilises la déclaration de variable Dim C As Date ou une fonction Date quelconque
comme : DateValue() , Cdate() , VBA utilise le format date défin dans le panneau
de configuration comme format de référence.
S'ajoute à ceci, la capacité d'excel à reconnaitre "de facto" un certain nombre de formats
de date....qui peut modifier légèrement les énoncés précédentes.
Salutations!
"Thierryp" a écrit dans le message de news:
Bonsoir Patrick,
je suis ému....C'est la première fois que j'aide un contributeur :-)))))
Avec un truc de ce genre (si tes onglets sont tous nommés avec les mêmes
règles :
Sub toto()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
jour = Left(Sh.Name, 2)
mois = Right(Left(Sh.Name, 5), 2)
année = Right(Sh.Name, 4)
date_onglet = jour & "/" & mois & "/" & année
If Weekday(date_onglet) = 1 Then 'c'est là que je coince
Sh.Visible = False
End If
Next
End Sub
@+ thierrypBonsoir à toutes et tous.
Mon classeur contient, entre autres, des feuilles nommées (sans les
guillemets) "01.02.2006", "02.02.2006", ..."28.02.2006"
Quelle boucle permettrait de masquer les feuilles correspondant aux
dimanches ?
(valeur 1 renvoyée par joursem())
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Sheets
If Sh.Name = XXXXXXXXXXX 'c'est là que je coince
Sh.visible = false
D'avance, merci pour vos suggestions.
Bien amicordialement,
P. Bastard