Marquage de jours dans un planning

apt

XLDnaute Impliqué
Bonjour à tous,

Voila, j’aimerais marquer les jours d’un planning, avec couleur et abréviations, selon la zone de texte cliquée.

Code:
Sub Action()
    Dim Cel As Range
    Dim Nom As String
    Dim Abrev As String
    Dim Couleur As Integer
    Dim We As Boolean, jFr As Boolean, jSm As Boolean, Marquage As Boolean
    Dim Coul As Long

    If Not Intersect(Selection, Range("B5:AF49")) Is Nothing Then
        If Selection.Rows.Count > 1 Then
            MsgBox "Une seule personne à la fois"
            Exit Sub
        End If

        If Range("A" & Selection.Row) = "" Then
            MsgBox "Aucune personne"
            Exit Sub
        End If
        Nom = ActiveSheet.Shapes(Application.Caller).TextFrame.Characters.Text
        Coul = ActiveSheet.Shapes(Application.Caller).OLEFormat.Object.Interior.Color
        MsgBox "Couleur de fond : " & Coul
        jSm = True
        Select Case Nom
        Case "Congé AI"
            Abrev = "CAI"
            We = True       ' Force le Week-end
            jFr = True      ' Force les jours fériés
        Case "Congé AO"
            Abrev = "CAO"
        Case "Congé Mal"
            Abrev = "CM"
            We = True       ' Force le Week-end
            jFr = True      ' Force les jours fériés
        Case "Congé Exp"
            Abrev = "CE"
        Case "RC"
            Abrev = "RC"
            We = True       ' Force le Week-end
            jFr = True      ' Force les jours fériés
            jSm = False
        Case "Récup", "Récup 1/2"
            Abrev = "Ré"
        Case "Format"
            Abrev = "FO"
        Case "Abs Irg"
            Abrev = "AI"
        Case "Abs Aut"
            Abrev = "AA"
        End Select

        If Abrev = "" Then
            MsgBox "Texte non reconnu dans le bouton " & Nom
            Exit Sub
        End If

        For Each Cel In Selection

            If jSm And Not We And Not jFr Then
                Marquage = True
            Else
                If We And jFr And Not jSm Then
                    Marquage = True
                End If
            End If

            If Marquage Then
                Cel = Abrev
                Cel.Interior.Color = Coul
            End If

        Next Cel
    End If
End Sub

En PJ, un tableau descriptif des règles de marquage des jours, à respecter.

Ce que je souhaiterais, c'est de corriger le code, car il y a un dysfonctionnement dans le marquage des jours.

Merci d’avance.
 

Pièces jointes

  • TableauMarquageJoursPlanning.zip
    7 KB · Affichages: 38

apt

XLDnaute Impliqué
Re : Marquage de jours dans un planning

Bonjour,

En PJ, un nouveau fichier.

Ce que j'aimerais faire maintenant, c'est quand on clique sur le bouton "Congé AI" ou (Congé AO, Congé Maladie, Congé exceptionnel, Récupération), on fera un saut dans la feuille "Données" pour voir dans le tableau des périodes des congés en A2:F9, et selon les dates inscrites "Début" et calculées "Fin", on marquera les cellules correspondantes du mois pour les personnes correspondantes.

Par exemple, pour Bruno :

Il a pris un congé de 30 jours allant du 21/11/2012 au 20/12/2012

Alors dans la feuille "Novembre", quand on clique sur le bouton "Congé AI", toutes les cellules allant du 21/11 au 30/11 seront marquées par "CAI".

Si on choisi la feuille "Décembre" avec un clique sur le bouton "Congé AI", toutes les cellules allant du 01/12 au 20/12 seront marquées par "CAI"

J’espère avoir bien exposé ma demande.

Merci d'avance.
 

Pièces jointes

  • Planning_de_présence_v002.xls
    205.5 KB · Affichages: 54

Staple1600

XLDnaute Barbatruc
Dernière édition:

apt

XLDnaute Impliqué
Re : Marquage de jours dans un planning

Bonjour,

Voila une nouvelle version en PJ.

J'ai besoin d'un coup de main pour corriger le code, parce que je n'arrive pas encore à obtenir ce que je voudrais.

Merci d'avance.
 

Pièces jointes

  • Planning_de_présence_v005.zip
    73.1 KB · Affichages: 32
Dernière édition:

apt

XLDnaute Impliqué
Re : Marquage de jours dans un planning

Bonjour,

Voila une petite explication :

Bon, les boutons de chaque feuille, marquent seulement les cellules de la feuille active.

Si on est en mois de décembre, les cellules concernées par le marquage vont de 01/12/2012 au 31/12/2012 pour les tous les boutons.

On a deux types de marquage :

1)Marquage avec périodes tirés du tableau "Données!A2:F10" pour les abréviations "CAI", "CAO", "CE", "CM", "FO", "Ré".

2)Marquage qui repose sur le choix d’une sélection de cellules dans l’étendu "Décembre!D9:AH25", avec appui sur un bouton parmi les abréviations suivantes : RC, R, AA, AI

Mon problème actuel se résume en deux points :

1- Si je choisi de marquer les "CAI" du mois de décembre, je n’ai aucune cellule coloriée. Pourtant il y a bien cette ligne dan la feuille "Données" qui doit servir pour le marquage d'un "CAI" pour le nom "tata":


tata828/12/201204/01/201301CAI


2- Si je chois une cellule dans la plage "Décembre!:D9:AH25" (Devra être un WE ou jour férié), ensuite je clique sur le bouton RC, rien ne se colore !!

Des explications ?

Merci d’avance.
 

apt

XLDnaute Impliqué
Re : Marquage de jours dans un planning

Bonsoir Staple1600,

Je crois que notre ami à cesser de suivre le sujet.

Et puis, j’aimerais bien connaitre tes idées pour mieux améliorer et faire avancer cette application.

Merci d’avance.
 

Statistiques des forums

Discussions
312 524
Messages
2 089 322
Membres
104 119
dernier inscrit
karbone57