MAsquer une colonne à partir d'une case à cocher contrôle de formulaire

Bonjour à tous,

Je ne sais pas s'il est possible de masquer une colonne à partir d'une case à cocher contrôle de formulaire.

J'ai essayé à partir de la réponse du contrôle du formulaire mais ça ne marche pas.

Avez vous une solution ?

Merci d'avance

Ci-joint un petit fichier

a

Bonjour,

Je n'ai pas utilisé un contrôle "Formulaire", mais "ActiveX"..

Et également un module de classe...

Regarde le fichier joint

Les codes utilisés :

Dans le Workbook_Open :

Private Sub Workbook_Open()
Call Init
End Sub

Dans un module normal :

Dim Buttons() As New Classe1
Sub Init()
Dim ButtonCount As Integer
Dim Obj As OLEObject

ButtonCount = 0
For Each Obj In ActiveSheet.OLEObjects
    If TypeOf Obj.Object Is MSForms.CheckBox Then
            ButtonCount = ButtonCount + 1
            ReDim Preserve Buttons(1 To ButtonCount)
            Set Buttons(ButtonCount).ButtonGroup = Obj.Object
    End If
Next Obj
End Sub

Et dans le module de classe :

Public WithEvents ButtonGroup As MSForms.CheckBox
Private Sub ButtonGroup_Click()
Dim Ligne As Long
Dim Col As String
Application.ScreenUpdating = False
Ligne = ButtonGroup.TopLeftCell.Row 'Ligne du bouton appuyé
Col = Right(ButtonGroup.Caption, Len(ButtonGroup.Caption) - InStr(1, ButtonGroup.Caption, " ")) 'colonne concernée
Cells(Ligne, 1).Interior.ColorIndex = IIf(ButtonGroup, 3, 4) 'si colonne masquée, rouge, sinon, vert
With Feuil2
    .Columns(Col).Hidden = IIf(ButtonGroup, True, False) 'masquage de la colonne
End With
Range("A1").Select 'juste pour le visu
End Sub

Dès que tu veux masquer une colonne de la Feuil2, celle-ci se masque, et la cellule contenant le checkbox se met en rouge

Bonne fin de journée

je suis perdu

Bon ça ne répond pas au sujet mais après recherche

je suis passé en contrôle activeX comme la suggéré COUSINHUB,

J'ai mis un code simple du style :

Private Sub CheckBox1_Click()
If CheckBox1 = True Then
Worksheets("Feuil2").Columns("j").Hidden = True
Else
CheckBox1 = False
Worksheets("Feuil2").Columns("j").Hidden = False
End If
End Sub

Sur lequel j'ai récupéré dans les propriétés de la case à cocher :

Linkedcell dans une cellule pour continuer a faire fonctionner mes formules

GroupName pour attacher la case à cocher à la feuille choisie.

C'est tellement simple mais je n'arrivais pas à trouver la solution sur le forum.

Merci COUSINHUB pour ton message mais c'était trop compliqué à mon niveau.

Rechercher des sujets similaires à "masquer colonne partir case cocher controle formulaire"