Changer la taille et la couleur d'une case à cocher

Bonjour,

je n'arrive pas à changer la taille et la couleur d'une case à cocher pouvez-vous m'aider?

D'avance merci.

Aurore.

Bonjour,

Déjà Case à cocher est une information insuffisante !

Tu n'es pas sans savoir qu'il y a des contrôles de formulaire (objets Excel, colllection Shapes) et des contrôles ActiveX (objets Microsoft.Forms, collection OLEObjects, sur une feuille). Ces derniers pouvant également se trouver dans un Userform...

Il faut donc agir sur une propriété, dépendant du type d'objet et de son emplacement, ce que l'on ignore !

Alors je ne suis pas une pro d'Excel

Ce que j'ai essayé de faire c'est de mettre une case à cocher à partir du contrôle de formulaire et du contrôle Active X mais dans les 2 cas je peux changer que la taille de la checkbox et non de la case en elle même.

Moi ce que je veux c'est pouvoir insérer une case à cocher dans différentes cellules et pouvoir modifier leur taille et leur couleur indifféremment les unes des autres.

Par contre je ne sais vraiment pas par quel moyen le faire simplement.

J'espère que ces informations vous suffiront et sinon n'hésitez pas.

Merci.

Si tu veux modifier la taille de la case où l'on coche, elle n'est pas modifiable.

Il faut réviser ton projet...

Bonjour,

au moment de la création des cases à cocher, on peut déterminer la taille mais pas la couleur,

mais on peut modifier la couleur sur l'action "cocher/decocher"

par exemple:

Sub CheckBox1_Click()
    With ActiveSheet.Shapes(Application.Caller)
        If .ControlFormat.Value = xlOn Then
            With .Fill
                .Visible = msoTrue
                .ForeColor.RGB = RGB(255, 0, 0)
            End With
        Else
            With .Fill
                .Visible = msoTrue
                .ForeColor.RGB = RGB(0, 255, 0)
            End With
        End If
    End With
End Sub

Sub AjoutCaseàcocher()
Dim Nom As String, LastRw As Long, i As Long
Dim l As Double, t As Double, w As Double, h As Double
Dim Caseàcocher As Object
LastRw = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row

EffaceCaseàcocher

For i = 2 To 5
    With Cells(i, 1)
      l = .Left + 10
      t = .Top + 4
      w = .Width - 20
      h = .Height - 10
    End With

   With ActiveSheet
       Set Caseàcocher = .CheckBoxes.Add(l, t, w, h)
       With Caseàcocher
         .Characters.Text = ""
         .OnAction = "CheckBox1_Click"
         .Placement = xlMove
       End With
   End With
Next
End Sub

Sub EffaceCaseàcocher()
For Each sh In ActiveSheet.Shapes
  If Left(sh.Name, 9) = "Check Box" Then sh.Delete
Next
End Sub
576caseacocher.xlsm (20.00 Ko)

Bonjour,

Ce que j'ai essayé de faire c'est de mettre une case à cocher à partir du contrôle de formulaire et du contrôle Active X mais dans les 2 cas je peux changer que la taille de la checkbox et non de la case en elle même.

Différencier la taille de la CheckBox de la taille de la case en elle-même indique à mon sens qu'il s'agit bien de la case où l'on met ou enlève la coche en cliquant que l'on veut modifier en ce qui concerne sa taille

SabV : Es-tu sûr que tu modifies la taille de la case où l'on coche ?

Par contre aucun problème pour la couleur, aussi bien pour des contrôles de formulaire que ActiveX, elle peut se définir à la conception, et se modifier à l'utilisation...

Cordialement.

bonjour

salut MFerrand

aucun progiciel ne dispose de cases à cocher de couleur. Pourquoi ? parce qu'on se crée des problèmes et qu'on perd du temps pour une amélioration sans grand intérêt.

si on veut mettre en lumière une case que l'utilsateur a oublié de cocher, alors on met un texte en rouge (dialog ou texte à côté de la case).

Salut jmd !

aucun progiciel ne dispose de cases à cocher de couleur.

Que veux-tu dire par là ?

S'il s'agit de la petite case où l'on coche, elle est invariable quel que soit le type de contrôle...

Par contre le contrôle lui-même et le texte du contrôle peuvent être colorés. la façon de faire diffère selon le type de contrôle, mais cela est faisable tant à la conception qu'à l'utilisation (avec un code VBA adéquat).

Cordialement.

salut MFerrand

oui, que la case est invariable

(mais dans l'absolu, on pourrait la dessiner et lui donner forme et couleur à volonté)

cependant, je suis toujours surpris des demandes sur le forum, posant des problèmes que bien des programmeurs ont contourné de manière simple.

mébon,

bonne journée à toi et à tous

amitiés excelliennes

Bonne journée à toi aussi...

L'absolu ! C'est peut-être un peu vaste ! En se limitant aux ressources VBA, on peut bien sûr créer un ersatz de case à cocher dimensionnable, mais on change de problème... et je ne proposerais pas une telle méthode qui présente à mon sens plus d'inconvénients que d'avantages...

Il s'agissait pour l'instant de l'utilisation de contrôles préexistants... Leur utilisation en passe par les dispositions prévues par le constructeur du contrôle... donc soit on se met en adéquation avec les possibilités offertes, soit la réalisation du projet initial peut s'accomoder d'autres méthodes et on lui apporte les modifications voulues pour cela...

Rechercher des sujets similaires à "changer taille couleur case cocher"