Ajouter une condition a une boucle

Bonjour a tous et toutes, j'aimerais ajouter une condition à une boucle pour colorer des jours sous conditions.

Sub test()
Dim r As Range, c As Range
Set r = Range(Range("A5"), Range("A5").End(xlDown))
For Each c In r
If Weekday(c) = 6 Or Weekday(c) = 7 Then
'If IsError(Application.Match(C, [Fériés], 0)) = 0 Then
c.Interior.ColorIndex = 3
End If
Next c
End Sub

j'aimerais ajouter les jours fériés "If IsError(Application.Match(C, [Fériés], 0)) = 0 Then".

Ce serais pour un planning avec un coloriage en colonne

Mais j'ai beau tester de plusieurs manière et je n'y arrive pas.

Voir le fichier joint.

Merci du coup de main.

Bonjour

A tester

Sub test()
Dim r As Range, c As Range
  Set r = Range(Range("A5"), Range("A5").End(xlDown))
  For Each c In r
    If Weekday(c, vbMonday) > 5 Or Application.CountIf([fériés], c) > 0 Then
      c.Interior.ColorIndex = 3
    End If
  Next c
End Sub

Merci mais cela ne marche pas .

J’essaie d'adapter cette boucle pour colorer un planning mensuel en colonne.

De plus suis obligé de stopper la boucle manuellement.

Merci

Bonjour

Adapté à ton fichier

Merci beaucoup ça marche bien.

Juste un dernier mot : pourrait ont l'adapter pour des colonnes de dates ?

Merci encore.

Je met en résolut je vois plus tard pour le reste.

Merci Banzaï 64.

Bonsoir

bruno9442 a écrit :

pourrait ont l'adapter pour des colonnes de dates ?

Il suffit de définir ta plage

A tester

Option Explicit

Sub test()
Dim r As Range, c As Range
  Set r = Range(Range("B5"), Range("B5").End(xlToRight))
  r.Interior.ColorIndex = xlNone
  For Each c In r
    If Weekday(c, vbMonday) > 5 Or Application.CountIf([fériés], c) > 0 Then
      c.Interior.ColorIndex = 3
    End If
  Next c
End Sub
Rechercher des sujets similaires à "ajouter condition boucle"