XL 2010 Macro pour décocher toutes les cases à cocher d'une feuille

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

rosabelle

XLDnaute Junior
Bonjour,

J'aurais besoin d'un coup de pouce :

Sur une feuille j'ai une multitude de cases à cocher.
Pour remettre à zéro cette feuille j'ai besoin entre autres de décocher toutes ces cases en une seule fois.
Quel serait le code qui chercherait toutes les cases à cocher de la feuille et les mettrai en "décoché" systématiquement que l'utilisateur les ait cochées ou pas.
J'ai tenté avec visual basic mais il ne se passe rien.
Merci par avance 😉
 

Pièces jointes

Solution
Re

Pour commodité de lecture, je remets le code posté jadis dans la discussion citée dans celle-ci
VB:
Sub test_I()
'coche tous les types de CheckBox
Application.ScreenUpdating = False
Cochez True
End Sub
Sub test_II()
'décoche tous les types de CheckBox
Application.ScreenUpdating = False
Cochez False
End Sub

Private Sub Cochez(statut As Boolean)
Dim c As Object
With ActiveSheet
    .CheckBoxes.Value = statut
    For Each c In .OLEObjects
    If TypeName(c.Object) = "CheckBox" Then c.Object.Value = statut
    Next c
End With
End Sub
Re

soan
Peu importe le code qui sera choisi

Moi, je vais mal dormir, si cette contre-vérité reste publiée sur le forum
(Oui, je parle de celle qui "me nargue" depuis 10h07 ce matin)

Je sais mon code fonctionnel, je voudrais donc avant de me brosser les dents et d'enfiler mon pyjama que Rosabelle corrige le message#4 en l'éditant.
Pour enfin (après avoir copier/coller le bout manquant (là je suppute 😉) -> voir message#11) qu'elle arrive à faire fonctionner mon VBA.

Ainsi j'aurais le sommeil léger et le teint frais demain matin. 😉
Dors paisiblement @Staple1600 , ton code fonctionne à merveille.
Celui de @soan était plus court et correspondait à ce que je voulais faire: uniquement décocher les cases en effet .
Je l'en remercie encore mais ensuite il y a eu le hic dans mon fichier.
Et tout compte fait le tien avec la partie "cocher toutes les cases" s'avère en effet utile car plutôt que de tout recocher pour tester le code "décocher" c'est bien pratique de l'avoir aussi.

Peux-tu m'expliquer ce que veut dire, hum enfin après une bonne nuit de sommeil bien mérité !

Private Sub Cochez(statut As Boolean)
Dim c As Object
With ActiveSheet
.CheckBoxes.Value = statut
For Each c In .OLEObjects
If TypeName(c.Object) = "CheckBox" Then c.Object.Value = statut
Next c
End With
End Sub

Encore merci merci merci à vous
 
Re

=>rosabelle
Tu peux expliquer comment tu as testé le code du message#3, stp ?
Car je n'arrive pas à reproduire l'erreur que tu as mis en copie d'écran.

Sauf si il manque dans le module cette partie du code VBA
VB:
Private Sub Cochez(statut As Boolean)
Dim c As Object
With ActiveSheet
    .CheckBoxes.Value = statut
    For Each c In .OLEObjects
    If TypeName(c.Object) = "CheckBox" Then c.Object.Value = statut
    Next c
End With
End Sub
Bonjour,
Comme je l'avais dit dans mon post 4 j'avais mis uniquement une partie du code uniquement 🥵🥵🥵 ce qui explique que ça ne fonctionnait pas :

Sub test_II()
'décoche tous les types de CheckBox
Application.ScreenUpdating = False
Cochez False
End Sub

Encore merci
Bonne soirée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
18
Affichages
805
Réponses
15
Affichages
1 K
Compte Supprimé 979
C
Retour