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

colorier en fonction de plage de dates

9 réponses
Avatar
magic-dd
bonjour
je cherche =E0 mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6

9 réponses

Avatar
Filochard
je cherche à mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

Il n'est pas du tout nécessaire et utile d'utiliser le vba pour celà
Une Mise en forme conditionnelle suffira
Un préalable indispensable : les plages situées dans une autre feuille et
auxquelles on fait référence dans une MFC doivent être nommées
Dans votre exemple :
Dates!B2:B7 sera nommée "Débuts20006"
Dates!C2:C7 sera nommée "Fins20006"

Sélection de E2:J6 de Feuil1 et la formule de la MEFC sera :

=SOMME((E2>=Débuts2006)*(E2<=Fins2006))>0

Voir l'exemple là :
http://cjoint.com/?klkXRQzAis
Avatar
lSteph
Bonjour,

Peux tu préciser selon quel critère et pourquoi autant (chaque
ligne)de conditions (la même décalée) différentes pour une seule et
même couleur 6?

Cordialement.

lSteph



On 11 oct, 10:16, magic-dd wrote:
bonjour
je cherche à mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6


Avatar
lSteph
...ce que tu cherches à faire dans ce tableau puisqu'il n'y figure
qu'une seule date?

On 11 oct, 10:16, magic-dd wrote:
bonjour
je cherche à mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6


Avatar
magic-dd
rebonjour

le tableau est constitué de plusieurs dates que je n'ai pas inscrite

cependant , cela permet de savoir si des personnes aurait pris une
permanence pendant des dates de vacances d'ou la feuille date

merci

On 11 oct, 10:56, lSteph wrote:
...ce que tu cherches à faire dans ce tableau puisqu'il n'y figure
qu'une seule date?

On 11 oct, 10:16, magic-dd wrote:



bonjour
je cherche à mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6- Masquer le texte des messages précé dents -


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



Avatar
lSteph
Soit.. dans ce cas quel serait le titre de chacune des colonnes
situées sous la fusion* intitulée dates ?
ou précises pourquoi n'as ton pas deux dates début et fin et ce que
signifient
alors ces 6 dates
à raison de quoi on pourra effectivement poser la ...les conditions à
mettre en oeuvre pour une MEFC

S'il n'y a plus 3 conditions on envisagera une macro.

--
lSteph
*(fusionurk! ...signé: LSteph "Pourfendeur des fusions")


On 11 oct, 11:53, magic-dd wrote:
rebonjour

le tableau est constitué de plusieurs dates que je n'ai pas inscrite

cependant , cela permet de savoir si des personnes aurait pris une
permanence pendant des dates de vacances d'ou la feuille date

merci

On 11 oct, 10:56, lSteph wrote:

...ce que tu cherches à faire dans ce tableau puisqu'il n'y figure
qu'une seule date?

On 11 oct, 10:16, magic-dd wrote:

bonjour
je cherche à mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6-Masquer le texte des messages préc édents -


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





Avatar
magic-dd
alors en fait je vais essayer de m'expliquer

dans la plage de cellule E2:J6

verifier si dans les dates inscrites sur cette plage que

si une date fait parti d'une plage de date dans la feuille date alors
on colorie en jaune.

si ce n'est pas le cas on laisse en blanc,

et pour la cerise sur le gateau, si dans une cellule de cette plage de
donnee il n'y a rien, on ne fait meme pas le teste de recherche de
date.

voili voilou

je prefererai une formule en vba :)||



On 11 oct, 13:03, lSteph wrote:
Soit.. dans ce cas quel serait le titre de chacune des colonnes
situées sous la fusion* intitulée dates ?
ou précises pourquoi n'as ton pas deux dates début et fin et ce que
signifient
alors ces 6 dates
à raison de quoi on pourra effectivement poser la ...les conditions à
mettre en oeuvre pour une MEFC

S'il n'y a plus 3 conditions on envisagera une macro.

--
lSteph
*(fusionurk! ...signé: LSteph "Pourfendeur des fusions")

On 11 oct, 11:53, magic-dd wrote:



rebonjour

le tableau est constitué de plusieurs dates que je n'ai pas inscrite

cependant , cela permet de savoir si des personnes aurait pris une
permanence pendant des dates de vacances d'ou la feuille date

merci

On 11 oct, 10:56, lSteph wrote:

...ce que tu cherches à faire dans ce tableau puisqu'il n'y figure
qu'une seule date?

On 11 oct, 10:16, magic-dd wrote:

bonjour
je cherche à mettre en valeur des plages de cellules en fonction des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6-Masquerle texte des messages préc édents -


- Afficher le texte des messages précédents -- Masquer le texte d es messages précédents -



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





Avatar
Filochard
si une date fait parti d'une plage de date dans la feuille date alors
on colorie en jaune.


Est-ce qu'il vous arrive de lire les réponses déjà données ?
J'en doute !

Avatar
lSteph
Re,Bonjour Magic,

http://cjoint.com/?klrnyvLIOC

On suppose les plages nommées vac2006 et vac2007
(dates de référence)
la plage nommée maplage , celle où l'on saisit (Feuil1)
j'ai mis jaune pour 2007 et vert pour 2006


'Dans le code de feuil1
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim iSect As Range, c As Range
Set iSect = Intersect(Target, Range("maplage"))

If Not iSect Is Nothing Then
Application.ScreenUpdating = False
For Each c In iSect.Cells
If Not IsEmpty(c) Then
If InPeriod([vac2007], DateValue(c)) = True Then
c.Interior.ColorIndex = 6
End If
If InPeriod([vac2006], DateValue(c)) = True Then
c.Interior.ColorIndex = 4
End If
Else
c.Interior.ColorIndex = xlColorIndexNone
End If

Next
End If
End Sub

Function InPeriod(periode As Range, x As Date) As Boolean
Dim i As Long
InPeriod = False
For i = 1 To 6
If x >= periode.Cells(i, 1) And _
x <= periode.Cells(i, 2) _
Then InPeriod = True: Exit Function
Next
End Function

'lSteph



On 11 oct, 14:22, magic-dd wrote:
alors en fait je vais essayer de m'expliquer

dans la plage de cellule E2:J6

verifier si dans les dates inscrites sur cette plage que

si une date fait parti d'une plage de date dans la feuille date alors
on colorie en jaune.

si ce n'est pas le cas on laisse en blanc,

et pour la cerise sur le gateau, si dans une cellule de cette plage de
donnee il n'y a rien, on ne fait meme pas le teste de recherche de
date.

voili voilou

je prefererai une formule en vba :)||

On 11 oct, 13:03, lSteph wrote:

Soit.. dans ce cas quel serait le titre de chacune des colonnes
situées sous la fusion* intitulée dates ?
ou précises pourquoi n'as ton pas deux dates début et fin et ce que
signifient
alors ces 6 dates
à raison de quoi on pourra effectivement poser la ...les conditions à
mettre en oeuvre pour une MEFC

S'il n'y a plus 3 conditions on envisagera une macro.

--
lSteph
*(fusionurk! ...signé: LSteph "Pourfendeur des fusions")

On 11 oct, 11:53, magic-dd wrote:

rebonjour

le tableau est constitué de plusieurs dates que je n'ai pas inscrite

cependant , cela permet de savoir si des personnes aurait pris une
permanence pendant des dates de vacances d'ou la feuille date

merci

On 11 oct, 10:56, lSteph wrote:

...ce que tu cherches à faire dans ce tableau puisqu'il n'y figure
qu'une seule date?

On 11 oct, 10:16, magic-dd wrote:

bonjour
je cherche à mettre en valeur des plages de cellules en fonctio n des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6-Masquerletexte des messages préc édents -


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



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



et





Avatar
Magic-DD
salut lSteph

je n'ai qu'un mot

merci

c'est exactement ce que je cherchais

deplus c'est ultra rapide et c'est ce qu'il me fallait

grand merci à toi pour la solution finale et aux autres membres pour leur
collaboration

@ bientot


"lSteph" a écrit dans le message de
news:
Re,Bonjour Magic,

http://cjoint.com/?klrnyvLIOC

On suppose les plages nommées vac2006 et vac2007
(dates de référence)
la plage nommée maplage , celle où l'on saisit (Feuil1)
j'ai mis jaune pour 2007 et vert pour 2006


'Dans le code de feuil1
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim iSect As Range, c As Range
Set iSect = Intersect(Target, Range("maplage"))

If Not iSect Is Nothing Then
Application.ScreenUpdating = False
For Each c In iSect.Cells
If Not IsEmpty(c) Then
If InPeriod([vac2007], DateValue(c)) = True Then
c.Interior.ColorIndex = 6
End If
If InPeriod([vac2006], DateValue(c)) = True Then
c.Interior.ColorIndex = 4
End If
Else
c.Interior.ColorIndex = xlColorIndexNone
End If

Next
End If
End Sub

Function InPeriod(periode As Range, x As Date) As Boolean
Dim i As Long
InPeriod = False
For i = 1 To 6
If x >= periode.Cells(i, 1) And _
x <= periode.Cells(i, 2) _
Then InPeriod = True: Exit Function
Next
End Function

'lSteph



On 11 oct, 14:22, magic-dd wrote:
alors en fait je vais essayer de m'expliquer

dans la plage de cellule E2:J6

verifier si dans les dates inscrites sur cette plage que

si une date fait parti d'une plage de date dans la feuille date alors
on colorie en jaune.

si ce n'est pas le cas on laisse en blanc,

et pour la cerise sur le gateau, si dans une cellule de cette plage de
donnee il n'y a rien, on ne fait meme pas le teste de recherche de
date.

voili voilou

je prefererai une formule en vba :)||

On 11 oct, 13:03, lSteph wrote:

Soit.. dans ce cas quel serait le titre de chacune des colonnes
situées sous la fusion* intitulée dates ?
ou précises pourquoi n'as ton pas deux dates début et fin et ce que
signifient
alors ces 6 dates
à raison de quoi on pourra effectivement poser la ...les conditions à
mettre en oeuvre pour une MEFC

S'il n'y a plus 3 conditions on envisagera une macro.

--
lSteph
*(fusion¾urk! ...signé: LSteph "Pourfendeur des fusions")

On 11 oct, 11:53, magic-dd wrote:

rebonjour

le tableau est constitué de plusieurs dates que je n'ai pas inscrite

cependant , cela permet de savoir si des personnes aurait pris une
permanence pendant des dates de vacances d'ou la feuille date

merci

On 11 oct, 10:56, lSteph wrote:

...ce que tu cherches à faire dans ce tableau puisqu'il n'y figure
qu'une seule date?

On 11 oct, 10:16, magic-dd wrote:

bonjour
je cherche à mettre en valeur des plages de cellules en fonction
des
dates inscrites dans une autre feuille.

cela ne fonctionne pas

peut etre que mon code vba n'est pas bon etntres certainement
modifiable.

merci de votre aide

http://cjoint.com/?klkpZBxVP6-Masquerletexte des messages
précédents -


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



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



et