Check List et Barre de Progression

Bonjour,

Je souhaite construire un formulaire avec des check.

j'ai construit le tableau et inséré des check box.

Jusque là tout va bien.

Mais ce que je voudrais, ce serait d'afficher une barre de progression qui en fonction du nombre de check se remplirait.

Et si possible de la manière suivante:

il y a 8 check.

Pour 3 check: rouge

De 4 à 7 check: orange

Tous les check (8): vert

Je joints mon fichier afin que ce soit un peu plus clair.

J'ai fait des recherches sur internet et je ne trouve pas la solution à mon problème.

Merci par avance à tous ceux qui me permettront d'avancer.

Yaya

56checklist-bar.zip (16.80 Ko)

Salut,

Un peu sur ce principe ?

Girodo,

114checklist-bar.zip (16.90 Ko)

Bonsoir Girodo,

Exactement dans cet esprit. Merci beaucoup.

Par contre, comment faire pour que la barre de progression soit graduée.

En gros que le remplissage de la barre dépende du nombre de checks validés...

Merci encore,

Yaya

Bonjour,

Une autre piste avec des Shapes. Ce sont les cases à cocher de gauche qui sont prises en compte (je ne sais pas si celles de droite doivent aussi être prises en compte). Pour les couleurs, je te laisse t'amuser avec RGB()

Le classeur :

Le code :

Sub Cocher()

    Dim S As Shape
    Dim Total As Integer

    For Each S In ActiveSheet.Shapes

        If Left(S.Name, 5) = "Coche" Then

            If S.ControlFormat.Value = 1 Then Total = Total + 1

        End If

    Next S

    Progression Total, 8

End Sub

Sub Progression(ByVal Valeur As Double, _
                ByVal Maxi As Double)

    Dim Fond As Shape
    Dim Progress As Shape
    Dim R As Double

    Set Fond = ActiveSheet.Shapes("RectFond")
    Set Progress = ActiveSheet.Shapes("RectProgress")

    R = Fond.Width / Maxi
    Progress.Width = Valeur * R

    Select Case Valeur
        Case Is < 4
            Progress.Fill.ForeColor.RGB = RGB(255, 0, 0)

        Case Is < 7
            Progress.Fill.ForeColor.RGB = RGB(0, 0, 255)

        Case Else
            Progress.Fill.ForeColor.RGB = RGB(0, 255, 0)

    End Select

    Range("D8").Value = Format(Valeur / Maxi, "0#.00%")

End Sub

Salut,

Par formule et mise en forme conditionnelle j'arrive pas à faire mieux que ça :

Girodo,

74checklist-bar-2.zip (16.95 Ko)
Rechercher des sujets similaires à "check list barre progression"