Le 11/01/2018 considéré comme le 01/11/2018

Bonsoir @ tous,

Je sais il faut mettre un fichier en téléchargement pour espérer avoir une réponse rapide...

Mais là je pense que ce n'est qu'une histoire "d'orthographe", il doit m'échapper un truc...

Voilà la situation : une plage de cellules appelée : Fériés, qui contient les dates fériés de l'année dont le 01/11/2018, feuille Paramètres_Application en cellules D2:D16.

J'ai une date : La_Date à laquelle j'incrémente des jours grâce à une boucle "i"

A chaque incrémentation je "lance" la fonction : Test_Fériés ci dessous :

Function Test_Fériés(Valeur_Cherchée As Date)
    Dim PlageDeRecherche As Range, Trouve As Range
    Set PlageDeRecherche = [Fériés]
    Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchée, LookIn:=xlValues)
    If Trouve Is Nothing Then
        Test_Fériés = False
    Else
        Test_Fériés = True
    End If
End Function

où PlageDeRecherche est égal à Fériés

Trouve est le résultat de FIND

Valeur_Cherchée est égale à la date testée.

Tout fonctionne, mais hélas le 11/01/2018 est considéré comme férié tout comme le 01/11/2018 !!!

Il y a même une aberration : le 25/02/2018 et 26/02/2018 sont fériés !!! en plus du 25/12/2018 et 26/12/2018.

Si dans le fichier je "supprime" les dates du 25 et 26 décembre, alors l'affichage du 25 et 26 février repasse en journée "normale" !!!

Merci par avance et malgré ce que j'ai dis plus haut, voici le fichier : le sujet étant clos, LouReeD à supprimer le fichier

Et oui je me lance dans les calendriers perpétuels en VBA !!! Un de plus !

@ bientôt

LouReeD

Bonjour,

Je ne comprenais pas trop alors j'ai testé ceci qui fonctionne correctement.

Function Test_Fériés2(Valeur_Cherchée As Date) As Boolean
Dim PlageDeRecherche As Range, n As Long
    Set PlageDeRecherche = [Fériés]
    n = WorksheetFunction.CountIf(PlageDeRecherche, Valeur_Cherchée)
    Test_Fériés2 = IIf(n > 0, True, False)
End Function

Puis, je suis revenu sur ta fonction, et j'ai vu ce qui clochait. J'ai modifié ainsi :

    Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchée, LookIn:=xlValues, lookat:=xlWhole)

Ah!, cette méthode Find, avec en plus des dates.

Redis moi.

Cdlt.

Nota : Sinon le dimanche de Pâques et le le dimanche de Pentecôte ne sont pas des fériés.

Bonjour Jean-Eric,

merci pour la double solution, je vais regardais cela de plus près.

Ceci dit, pour le Nota : c'est dimanche de Pâques et de Pentecôte ne sont pas fériés parce que en France on "ne travaille pas le dimanche".

Mais pour une boitte qui travaille habituellement le dimanche, n'est elle pas fermée ces jour là ?

Je vous avoue m'être posé la question, surtout depuis que le travaille dominicale devient de plus en plus à la mode.

Alors oui je suis d'accord avec vous, ils ne sont pas considérés comme jours fériés, mais peut-être tout simplement car ils tombaient sur un jour chômé, mais la donne à changé...

Du coup je ne sais quoi en pensé.

En effet, de mon coté les dates entre VBA et Excel, et les différentes fonctions !!! Je suis toujours obligé de faire des tests, je n'y comprend rien ! En plus si la fonction Find réussie à "torturer" les valeurs... Pour le 01/11/2018 et le 11/01/2018, je peux comprendre, mais pour le 25/12/2018 et 25/02/2018 là je ne comprend pas...

Merci encore à vous

@ bientôt

LouReeD

Bon après une petite recherche sur le net :

Article L3133-1

Les fêtes légales ci-après désignées sont des jours fériés :

1° Le 1er janvier ;

2° Le lundi de Pâques ;

3° Le 1er mai ;

4° Le 8 mai ;

5° L'Ascension ;

6° Le lundi de Pentecôte ;

7° Le 14 juillet ;

8° L'Assomption ;

9° La Toussaint ;

10° Le 11 novembre ;

11° Le jour de Noël.

Mais ce sont des jours fériés au sens "légal" du mot, c'est à dire pour une réglementation administrative du code du travail.

Donc je peux considéré le dimanche de pâques comme un jour férié, si pour moi les jours fériés comprennent les fêtes religieuses, non ?

Ceci dit c'est un calendrier pour un usage traditionnel, je vais donc me plier à la loi, et supprimer des jours fériés le dimanche de Pâques et le dimanche de Pentecôte...

@ bientôt et merci encore pour la solution.

LouReeD

Rechercher des sujets similaires à "2018 considere comme"