APPEL aux GÉNIES du VBA de cet aimable Forum

DEMERS

XLDnaute Nouveau
Bonjour / Bonsoir à Vous.

Je relance le sujet une autre fois, parce que je pensais avoir résolu mon problème :confused:, mais il parait qu’il est un peu complexe et je pense que leur astuce n’ait jamais été exposée sur le net d’après mes recherches que j’avais faites.
Ci-joint un tableau présentant une fiche de pointage de présence (prévu une fiche par feuille par mois)sur laquelle j'ai fait des mises en forme conditionnelles de façon à faire apparaître en gris pattern les dimanche, en rouge pattern les jours fériés Non-payés, et en vert pattern les jours fériés Payés, et ce, par référence à un autre tableau des jours fériés de l’année qui se trouve sur une autre feuille du même classeur
Sur la même fiche, j’ai affecté 3 Boutons de commande pour le marquage
- ABSENT en Rouge
- PRESENT en Vert
Et un bouton EFFACER pour la rectification en cas de faute de marquage.

Jusqu’au là c’est bon.

Or je recherche à ajouter à cette application une astuce en VBA consistant à l’automation suivante.
En cas ou le mois de pointage comprend 1 ou 2 ou 3 jours fériés payés et que l’employé s’absente « juste avant » ou « juste après » le jour férié payé, celui-ci (je veux dire le jour férié payé) ne lui serait pas compter dans son salaire.

L’étude de la module VBA assurant cette fonction doit se baser sur la probabilité que tout mois peut comprendre jusqu’à (3 jours fériés payés) et (1 jour férié non payé) et bien-sûr le DIMANCHE

A prévoir aussi que :
- Les jours fériés payés peuvent avoir lieu dispersés ou successifs
- Le ou les jours fériés peut (peuvent) être précédés ou suivis d’un DIMANCHE.
- En cas ou LUNDI est un jour férié payé, et l’employé s’absente samedi, ce jour ne lui sera pas compté.
- Le même cas ou le jour férié PAYÉ est précédé d’un jour férié NON PAYÉ
- En bref, tous les cas sont possibles et je pense que pour la fonction VBA soit possible, l’automation doit toujours se référer aux dates de la liste des JOURS FERIES avec un tracé de probabilité de : 3 jours fériés payés + 1 jour férié non-payé et 1 dimanche.

A cet effet, je vous appelle de bien vouloir m’aider à intégrer cette automation dans mon petite application.

J’espère avoir pu bien expliqué et j’espère que ce sera possible.

Je vous adresse, toutes et tous, mes vives remerciement par avance.
 

Pièces jointes

  • TEST_2.xls
    102.5 KB · Affichages: 59
  • TEST_2.xls
    102.5 KB · Affichages: 108
  • TEST_2.xls
    102.5 KB · Affichages: 103

Paritec

XLDnaute Barbatruc
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour Demers le forum
bon alors j'avais déjà vu ta demande mais comme tes fichiers plein de formules me donnent des boutons le n'avais pas répondu!!!
Surtout que tu t'adresses dans ton titre aux Génies du VBA et je ne suis pas un Génie.
Comme je vois que personne ne te répond .......
Bref voilà un premier test tu regardes uniquement dans la feuille janvier si déjà cela te convient, si c'est bon on avance, je n'ai pas géré les fériés à cheval sur deux mois mais on fera si déjà le début te convient, le calcul se fait sur une sélection de n'importe quelle cellule
à toi de vérifier et tu me redis, si j'ai compris ce que tu veux et l'histoire de tes jours fériés !!! ???
a+
papou:eek:
 

Pièces jointes

  • Demers V1.xls
    113 KB · Affichages: 37
Dernière édition:

DEMERS

XLDnaute Nouveau
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour Paritec;
Tout d'abord, je tiens à te remercier vivement d'avoir pris le temps pour t'occuper de ma demande.
je te suis bien reconnaissant.
d'après l’Essai que j'ai fait, je peux dire que tu as bien ciblé l'astuce que je recherche et, en effet, tu es génie en VBA (je te dis cela sans aucun compliment) puisque l'astuce que je recherche pour ma petite application c'est parfaitement celle que tu as conçu.
vraiment BRAVO
Afin d’éviter toute incident de faux calcul, juste je rappelle que:
- un mois peut comprendre jusqu'à 3 jours fériés payés (dispersés ou successifs)
- un jour férié payé ou 2 jours fériés peuvent être précédés ou suivis d'un dimanche

d'autre part, la case à droite des jours fériés Non-payés c'est juste optionnel et pour information, c'est-à-dire, n'est pas important et on peut le supprimer si le cas l'exige.
Bonne continuation et mes vives remerciements à vous.
Amicalement.
 

Paritec

XLDnaute Barbatruc
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Rebonjour Demers le forum
- un mois peut comprendre jusqu'à 3 jours fériés payés (dispersés ou successifs)
Que dois-je comprendre? au delà de 3 jours fériés on ne compte plus???

- un jour férié payé ou 2 jours fériés peuvent être précédés ou suivis d'un dimanche
dans ce cas là on fait quoi ?? si le jour férié est un Samedi et que le gars il travaille le vendredi et le lundi cela donne quoi??
et si il travaille le vendredi et pas le lundi ???
a+
Papou:eek:
 

DEMERS

XLDnaute Nouveau
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Rebonjour
Pour résumer / On doit compter tous les jours fériés PAYES du mois.
Si un jour férié tombe SAMEDI, et l'employé a marqué sa présence VENDREDI et LUNDI, il lui sera compté automatiquement.
mais si Absence SAMEDI ou LUNDI ou (SAMEDI et LUNDI), il n'aura pas droit à un jour férié PAYE.

d'autre part, j'ai dit (un mois peut comprendre 3 JFP) j'ai voulu dire q'un mois peut comprendre plusieurs JFP.
d'après la probabilité que j'ai faites sur les mois au long de 6 prochaines années, j'ai constaté qu'un mois peut comprendre 5 ou 6 jours fériés payés, puisqu'il y a des JFP lunaires et flottants.

j'espère avoir pu éclaircir.
pour toute information jugée utile, n'hésitez pas à me la demander.
Cordialement
 

laurent950

XLDnaute Accro
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour,

J'ai une fonction qui balaye toutes les formule d'une condition, mais comment
trouver la condition qui répond a cette formule ?
Je vous joint le code : site : La mise en forme conditionnelle dans Excel

VB:
Sub test()
'Récupère les conditions de la cellule D2
Dim Rg As Range
Set Rg = ActiveCell
MsgBox ExtraitConditions(Rg)
End Sub
Function ExtraitConditions(Cell As Range)
'http://silkyroad.developpez.com/Excel/MiseEnFormeConditionnelle/
'La procédure suivante extrait toutes les mises en forme d'une cellule.
'Vous pourrez l'utiliser pour récupérer les critères spécifiés et par exemple tester les conditions par macro.
    Dim FC As FormatCondition
    Dim Resultat As String
    
    'Vérifie si la cellule contient une mise en forme conditionnelle
    If Cell.FormatConditions.Count > 0 Then
      
        'Boucle sur les MFC de la cellule
        For Each FC In Cell.FormatConditions
            'Si la MFC est de type "La valeur de la cellule est"
            If FC.Type = xlCellValue Then
                Select Case FC.Operator
                   Case xlBetween
                      Resultat = "Compris entre " & FC.Formula1 & " et " & FC.Formula2
                   Case xlNotBetween
                      Resultat = "Non compris entre " & FC.Formula1 & " et " & FC.Formula2
                   Case xlEqual
                      Resultat = "Egal à " & FC.Formula1
                   Case xlNotEqual
                      Resultat = "Différent de " & FC.Formula1
                   Case xlGreater
                      Resultat = "Supérieur à " & FC.Formula1
                   Case xlLess
                      Resultat = "Inférieur à " & FC.Formula1
                   Case xlGreaterEqual
                      Resultat = "Supérieur ou égal à " & FC.Formula1
                   Case xlLessEqual
                      Resultat = "Inférieur ou égal à " & FC.Formula1
                End Select
             
            Else
                'Si la MFC est de type "La formule est"
                Resultat = "La formule est " & FC.Formula1
            End If
            MsgBox Resultat
        Next FC
    End If
End Function

Laurent
 

Pièces jointes

  • ExtraitTouteMiseEnFormeConditionnelle.xlsm
    14.8 KB · Affichages: 24

DEMERS

XLDnaute Nouveau
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour Laurent950 du forum
Préalablement, je vous remercie de l’intérêt que vous avez apporté à mon sujet.
Je ne sais pas quelle est la fonction exacte de cette module. je dois l'essayer
Si elle traduit les formules en VBA ce sera vraiment utile.
Je vais l'essayer par des formules conditionnelles et on va voir qu'est ce qu'elle va donner.
Le résultat va être commentée par l'essai
Merci une autre fois et,
Cordialement
 

Paritec

XLDnaute Barbatruc
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Re Bonjour Demers le forum
ok mais tu ne réponds pas à ma question, si tu as deux jours consécutif férié et exemple un PY et un NP le résultat souhaité c'est quoi ?? si le gars est là la veille ??? si le gars est là avent le premier jour férié et après le deuxième jour férié??
si tu ne me réponds pas je ne pourra pas finir la macro
a+
Papou:eek:
 

DEMERS

XLDnaute Nouveau
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour PARITEC
Je vous ai répondu déjà, ..je pense.
Ok, je vous donne tous les cas possible

Si une absence avant ou après le jour férié payé
Si Une absence avant ou après (3, 4 ou 5 ou x jours fériés payés successifs)
Si Une absence avant ou après le ou les jours fériés payés et que le ou les JFP sont précédés ou suivis d'un jour férié non-payé ou/et d'un dimanche > dans tous ces cas le ou les JFP ne seront pas comptés.

voici tous les cas possible
en résumé, le principe d'avoir le droit aux jours fériés payés c'est que la présence devra être marquée avant et après les JFP même si ce ou ces JFP sont précédés ou suivis d'un DIMANCHE (et/ou) d'un jour férié NON-PAYE.

je suis toujours là pour vous fournir toute information jugée utile.
Amicalement.
 

Staple1600

XLDnaute Barbatruc
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour à tous


J'ai du mal à corréler les explications de DEMERS avec ceci
Jours fériés : droits et rémunération
Donc à traduire finalement cela en formules ou macro Excel

NB: Ou alors c'est une autre législation que la législation française qui s'applique ici ?

EDITION: Bonjour Paritec
Le samedi matin, je suis pas à l'optimum de ma forme, je n'avais pas capté que TN voulait dire Tunisie. ;)
 
Dernière édition:

Paritec

XLDnaute Barbatruc
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Bonjour Demers le forum
bon alors si vous pensez avoir répondu a ma demande qui pourtant est bien précise, c'est bien mais pour moi ce n'est pas répondu
ok mais tu ne réponds pas à ma question, si tu as deux jours consécutif férié et exemple un PY et un NP le résultat souhaité c'est quoi ?? si le gars est là la veille ??? si le gars est là avant le premier jour férié et après le deuxième jour férié??
si tu ne me réponds pas je ne pourra pas finir la macro

si tu as deux jours consécutif férié et exemple un PY et un NP le gars est là avant PY on fait quoi on paye ??
si tu as deux jours consécutif férié et exemple un PY et un NP mle gars est là avant et après le NP on fait quoi on paye ??

C'est peut-être clair pour toi, mais excuse moi cela ne l'est pas pour moi
a+
Papou:eek:

EDIT: Pour Staple, je ne pense pas que la Tunisie Soit en France, mais peut-être??
 

DEMERS

XLDnaute Nouveau
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Rebonjour Paritec.
Tout d'abord, je te remercie d'avoir répondu à Staple par la bonne réponse.
J'étais déjà en train de lui envoyer des liens concernant la gestion des JFP en Tunsie, en France, en Belgique et en canada.
parce que le même principe appliqué dans pas mal de pays.(en plus je lui demande via ce msg de bien vérifier sur le net avant de poser un tel commentaire aux autres)
--------
Concernant votre réponse:

Si un JFP suivi d'un NP ou vise versa, et le gars s'absente avant ou après ou avant et après, il perd son droit au JFP
même cas pour x JFP suivi ou précédé d'un NP et/ou Dimanche.

SI un JFP suivi d'un NP et le gars est présent avant et après, il a droit.

A+


-
 

Staple1600

XLDnaute Barbatruc
Re : APPEL aux GÉNIES du VBA de cet aimable Forum

Re ,

DEMERS
(en plus je lui demande via ce msg de bien vérifier sur le net avant de poser un tel commentaire aux autres)
:confused::confused:
Je n'ai fait aucun commentaire d'aucune sorte!
J'ai simplement indiqué que j'avais des difficultés à traduire les explications de ta question en solution Excel.
Et l'édition de mon précédent message explique le pourquoi de ma question.

NB: La difficulté que je rencontre se situait simplement sur ce point-ci:
Quelque soit la nature du contrat du salarié, il bénéficie de la règle du maintien de salaire en cas de repos un jour férié légal.
 
Dernière édition:

Statistiques des forums

Discussions
312 198
Messages
2 086 149
Membres
103 132
dernier inscrit
hedfahmi