Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

liste déroulante par semaine

4 réponses
Avatar
gilles
bonjour à tous,
sur un planning comportant 52 colonnes correspondant aux 52 semaines de
l'année,
j'aimerais créer une liste déroulante dont les valeurs soient les 5 jours de
la semaine dans laquelle je travaille
ex:
je suis dans la cellule h20 qui se situe dans la colonne de la semaine 9 et
je souhaiterais que la liste déroulante présente les jours
25/2, 26/2, 27/2, 28/2, 29/2
si je passe en semaine 10:
3/3, 4/3, 5/3, 6/3, 7/3
ceci en évitant de créer 52 listes différentes, et en utilisant indirect ou
décaler, mais, paour le moment je merdoie lamentablement
si un brillant cerveau a une soluce...merci
gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...

4 réponses

Avatar
JB
Bonsoir,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 20 Then
an = 2008
d = 7 * (Target.Column + 1) + DateSerial(an, 1, 3) -
Weekday(DateSerial(an, 1, 3)) - 5
temp = ""
For j = 0 To 4
temp = temp & Format(d + j, "dd/mm/yy") & ","
Next j
Cells(20, Target.Column).Validation.Delete
Cells(20, Target.Column).Validation.Add xlValidateList,
Formula1:=Left(temp, Len(temp) - 1)
End If
End Sub

http://cjoint.com/?istezlNZMh

JB
http://boisgontierjacques.free.fr




On 18 août, 17:16, gilles wrote:
bonjour à tous,
sur un planning comportant 52 colonnes correspondant aux 52 semaines de
l'année,
j'aimerais créer une liste déroulante dont les valeurs soient les 5 j ours de
la semaine dans laquelle je travaille
ex:
je suis dans la cellule h20 qui se situe dans la colonne de la semaine 9 et
je souhaiterais que la liste déroulante présente les jours
25/2, 26/2, 27/2, 28/2, 29/2
si je passe en semaine 10:
3/3, 4/3, 5/3, 6/3, 7/3
 ceci en évitant de créer 52 listes différentes, et en utilisant indirect ou
décaler, mais, paour le moment je merdoie lamentablement
si un brillant cerveau a une soluce...merci
gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...


Avatar
gilles
Merci JB et PB de votre aide
pour PB, ça répond en partie seulement
je m'explique:
dans mes 52 colonnes, je souhaite pouvoir saisir une date qui soit 1 des 5
jours de la semaine concerné
Avec la soluce que tu me proposes, je dois à chaque fois aller filtrer avant
de saisir, alors que je cherche une liste qui se mette à jour automatiquement
pour JB
le code que tu me proposes est nickel, mais sauf erreur de ma part, on ne
peut saisir qu'en ligne 20 ? ( If Target.Row = 20 Then)
merci
je creuse à partir d'une formule de Guy David, trouvée sur son fichier
gda-listedependantes.xls
merci
à +
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...


"JB" a écrit :

Bonsoir,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 20 Then
an = 2008
d = 7 * (Target.Column + 1) + DateSerial(an, 1, 3) -
Weekday(DateSerial(an, 1, 3)) - 5
temp = ""
For j = 0 To 4
temp = temp & Format(d + j, "dd/mm/yy") & ","
Next j
Cells(20, Target.Column).Validation.Delete
Cells(20, Target.Column).Validation.Add xlValidateList,
Formula1:=Left(temp, Len(temp) - 1)
End If
End Sub

http://cjoint.com/?istezlNZMh

JB
http://boisgontierjacques.free.fr




On 18 août, 17:16, gilles wrote:
> bonjour à tous,
> sur un planning comportant 52 colonnes correspondant aux 52 semaines de
> l'année,
> j'aimerais créer une liste déroulante dont les valeurs soient les 5 jours de
> la semaine dans laquelle je travaille
> ex:
> je suis dans la cellule h20 qui se situe dans la colonne de la semaine 9 et
> je souhaiterais que la liste déroulante présente les jours
> 25/2, 26/2, 27/2, 28/2, 29/2
> si je passe en semaine 10:
> 3/3, 4/3, 5/3, 6/3, 7/3
> ceci en évitant de créer 52 listes différentes, et en utilisant indirect ou
> décaler, mais, paour le moment je merdoie lamentablement
> si un brillant cerveau a une soluce...merci
> gilles
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...




Avatar
JB
Bonjour,

http://cjoint.com/?itg0SoxCxP

ÞCALER(Dates;COLONNE()*7-1;;5)

JB


On 18 août, 22:17, gilles wrote:
Merci JB et PB de votre aide
pour PB, ça répond en partie seulement
je m'explique:
dans mes 52 colonnes, je souhaite pouvoir saisir une date  qui soit 1 d es 5
jours de la semaine concerné
Avec la soluce que tu me proposes, je dois à chaque fois aller filtrer avant
de saisir, alors que je cherche une liste qui se mette à jour automatiq uement
pour JB
le code que tu me proposes est nickel, mais sauf erreur de ma part, on ne
peut saisir qu'en ligne 20 ? ( If Target.Row = 20 Then)
merci
je creuse à partir d'une formule de Guy David, trouvée sur son fichie r
gda-listedependantes.xls
merci
à +
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'h ui,
mais à chaque jour suffit sa peine...

"JB" a écrit :



> Bonsoir,

> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
>   If Target.Row = 20 Then
>     an = 2008
>     d = 7 * (Target.Column + 1) + DateSerial(an, 1, 3) -
> Weekday(DateSerial(an, 1, 3)) - 5
>     temp = ""
>     For j = 0 To 4
>       temp = temp & Format(d + j, "dd/mm/yy") & ","
>     Next j
>    Cells(20, Target.Column).Validation.Delete
>    Cells(20, Target.Column).Validation.Add xlValidateList,
> Formula1:=Left(temp, Len(temp) - 1)
>    End If
> End Sub

>http://cjoint.com/?istezlNZMh

> JB
>http://boisgontierjacques.free.fr

> On 18 août, 17:16, gilles wrote:
> > bonjour à tous,
> > sur un planning comportant 52 colonnes correspondant aux 52 semaines de
> > l'année,
> > j'aimerais créer une liste déroulante dont les valeurs soient les 5 jours de
> > la semaine dans laquelle je travaille
> > ex:
> > je suis dans la cellule h20 qui se situe dans la colonne de la semain e 9 et
> > je souhaiterais que la liste déroulante présente les jours
> > 25/2, 26/2, 27/2, 28/2, 29/2
> > si je passe en semaine 10:
> > 3/3, 4/3, 5/3, 6/3, 7/3
> >  ceci en évitant de créer 52 listes différentes, et en utilis ant indirect ou
> > décaler, mais, paour le moment je merdoie lamentablement
> > si un brillant cerveau a une soluce...merci
> > gilles
> > --
> > en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujou rd'hui,
> > mais à chaque jour suffit sa peine...- Masquer le texte des message s précédents -

- Afficher le texte des messages précédents -


Avatar
gilles
Bonjour JB
absolument NICKEL
merci encore
je vais tenter de comprendre la formule
à+
gilles
--
en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
mais à chaque jour suffit sa peine...


"JB" a écrit :

Bonjour,

http://cjoint.com/?itg0SoxCxP

ÞCALER(Dates;COLONNE()*7-1;;5)

JB


On 18 août, 22:17, gilles wrote:
> Merci JB et PB de votre aide
> pour PB, ça répond en partie seulement
> je m'explique:
> dans mes 52 colonnes, je souhaite pouvoir saisir une date qui soit 1 des 5
> jours de la semaine concerné
> Avec la soluce que tu me proposes, je dois à chaque fois aller filtrer avant
> de saisir, alors que je cherche une liste qui se mette à jour automatiquement
> pour JB
> le code que tu me proposes est nickel, mais sauf erreur de ma part, on ne
> peut saisir qu'en ligne 20 ? ( If Target.Row = 20 Then)
> merci
> je creuse à partir d'une formule de Guy David, trouvée sur son fichier
> gda-listedependantes.xls
> merci
> à +
> --
> en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> mais à chaque jour suffit sa peine...
>
> "JB" a écrit :
>
>
>
> > Bonsoir,
>
> > Private Sub Worksheet_SelectionChange(ByVal Target As Range)
> > If Target.Row = 20 Then
> > an = 2008
> > d = 7 * (Target.Column + 1) + DateSerial(an, 1, 3) -
> > Weekday(DateSerial(an, 1, 3)) - 5
> > temp = ""
> > For j = 0 To 4
> > temp = temp & Format(d + j, "dd/mm/yy") & ","
> > Next j
> > Cells(20, Target.Column).Validation.Delete
> > Cells(20, Target.Column).Validation.Add xlValidateList,
> > Formula1:=Left(temp, Len(temp) - 1)
> > End If
> > End Sub
>
> >http://cjoint.com/?istezlNZMh
>
> > JB
> >http://boisgontierjacques.free.fr
>
> > On 18 août, 17:16, gilles wrote:
> > > bonjour à tous,
> > > sur un planning comportant 52 colonnes correspondant aux 52 semaines de
> > > l'année,
> > > j'aimerais créer une liste déroulante dont les valeurs soient les 5 jours de
> > > la semaine dans laquelle je travaille
> > > ex:
> > > je suis dans la cellule h20 qui se situe dans la colonne de la semaine 9 et
> > > je souhaiterais que la liste déroulante présente les jours
> > > 25/2, 26/2, 27/2, 28/2, 29/2
> > > si je passe en semaine 10:
> > > 3/3, 4/3, 5/3, 6/3, 7/3
> > > ceci en évitant de créer 52 listes différentes, et en utilisant indirect ou
> > > décaler, mais, paour le moment je merdoie lamentablement
> > > si un brillant cerveau a une soluce...merci
> > > gilles
> > > --
> > > en VBA aussi, ne remettons pas au lendemain ce qu'on peut faire aujourd'hui,
> > > mais à chaque jour suffit sa peine...- Masquer le texte des messages précédents -
>
> - Afficher le texte des messages précédents -