Réinitialiser CheckBoxs

  • Initiateur de la discussion Initiateur de la discussion meldja
  • Date de début Date de début

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 !

meldja

XLDnaute Impliqué
Bonjour,
Je souhaiterais réinitialiser 56 CheckBoxs.
J'ai vu pas mal de solutions sur le Net mais qui s'appliquent toutes à des checkboxs sur des userforms.
Mes checkboxs ne sont pas dans un userform, ils sont tout simplement sur une feuille (Feuil1).
Je n'ai pas réussi à adapter ce que j'ai pu voir sur le Net.
J'ai essayé une boucle du style :
For n = 1 to 56
CheckBox& n = false
Next n

mais ça ne marche pas.
Merci d'avance
 
Re : Réinitialiser CheckBoxs

Salut meldja, le Forum

Peut être comme cela

Code:
For n = 1 to 56
Controls ("CheckBox" & n) = False
Next n
Bonne Journée

EDITION: Oublie ça... j'avais pas vu que c'est sur Une feuille Excel

Fait une Recherche sur le Forum J'ai lu cela il y a quelques jours ...moi même je cherche
à tout

C'était pas long 😀

Bonne Journée

Code:
For n = 1 To 56
ActiveSheet.Shapes("CheckBox"& n)= False
Next n
 
Dernière édition:
Re : Réinitialiser CheckBoxs

Ahhhh,
Ca m'a effacé toutes mes checkboxs, j'en avais 56, sniff...
T'inquiètes, j'avais eu la clairvoyance de sauvegarder avant l'exécution de la macro, comme ça j'ai pu quitter sans enregistrer les modifs et j'ai réouvert et récupéré toutes mes checkboxs.
En fait, je ne veux pas les supprimer, je veux juste qu'elles soient décochées.
En tout cas merci, ce code pourra peut être me servir pour autre chose.
Si tu as d'autres pistes, je suis preneur
 
Re : Réinitialiser CheckBoxs

Re,

Essaye plutôt cela

Code:
Dim n As Byte

For n = 1 To 56
Feuil1.OLEObjects("CheckBox" & n).Object = False
Next n
Heureusement que tu as sauvegardé avant 😀

Heu... faituntestquandmême 🙄

Bonne Journée
 
Re : Réinitialiser CheckBoxs

Bonjour Meldja, Dull, bonjnour le forum,

Essaie ce code :

Code:
Sub Macro1()
For x = 1 To ActiveSheet.OLEObjects.Count
    If Left(ActiveSheet.OLEObjects(x).Name, 8) = "CheckBox" Then
        ActiveSheet.OLEObjects(x).Object.Value = False
    End If
Next x
End Sub

Édition :

Ooops ! Trop tard Dull a déjà sévi... c'est du sévi chaud !
 
Dernière édition:
Re : Réinitialiser CheckBoxs

bonjour meldja Dull robert le forum une autre macro uniquement sur feuille1 a adapter

Sub Macro1()
For Each Obj In Worksheets("Feuil1").OLEObjects
If TypeOf Obj.Object Is MSForms.CheckBox Then
Obj.Object.Value = Not (Obj.Object.Value)
End If
Next Obj
End Sub
 
Re : Réinitialiser CheckBoxs

Merci Dull, merci Robert,
J'ai testé la solution de Dull et elle marche bien donc je la garde (en plus c'est la plus courte).
Ca m'étonne que ça soit aussi compliqué. Si je comprends bien VBA ne fait pas la distinction entre les différents objets. Ecrire tout simplement "CheckBox" & n ne suffit pas. Débutant que je suis, je commence à me dire que jamais j'y arriverai s'il y a autant de trucs à connaître.
En tout cas, merci beaucoup, comme à chaque fois, j'ai trouvé une réponse.
Bonne fin de week end
 
- 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
13
Affichages
739
Réponses
25
Affichages
1 K
Retour