Decocher des cases avec une macro

  • Initiateur de la discussion Initiateur de la discussion cgrandmaire
  • 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 !

C

cgrandmaire

Guest
bonjour
J'ai fait un tableau où on coche des cases.Je souhaiterai faire une macro pour re-innitialiser mon tableau, donc décocher toutes les cases.
Merci
 
Re : Decocher des cases avec une macro

Bonjour,

Cela dépend de la provenance des cases à cocher.

Voici une méthode pour 3 vas de figure


Mettre à zéro toutes les cases à cocher sur Un UseForm

Private Sub CommandButton1_Click()

Dim InitCase As Control
For Each InitCase In Me.Controls
InitCase.Value = False
Next InitCase

End Sub


Mettre toutes les cases à cocher sur une feuille Excel

Si les cases à cocher proviennent de la barre outil Contrôle


Sub InitCaseACocher()
Dim Shps As OLEObject
For Each Shps In Feuil1.OLEObjects
If Shps.progID = "Forms.CheckBox.1" Then
Shps.Object.Value = False
End If
Next Shps
End Sub


Si les cases à cocher proviennent de la barre outil Formulaire

Sub InitCaseACocher()
Dim Shp As Shape
For Each Shp In Sheets("Feuil1").Shapes
If Shp.Name Like "Check Box*" Then
Shp.DrawingObject.Value = False
End If
Next Shp
End Sub
 
Re : Decocher des cases avec une macro

Re

cgrandmaire
Si tu dissocies ton groupe, cela fonctionne (Tu sélectionnes ton groupe, clic-droit puis choisir Dissocier, avant d’exécuter la macro)
(j'ai testé avec ma macro et cela fonctionne)

Edition: bonjour CB60, penses-tu qu'on soit obliger de boucler dans le cas présent ?
 
Dernière édition:
Re : Decocher des cases avec une macro

re
test cela:
Sub Vide_Case()
Dim cse As Shape
On Error Resume
Next
ActiveSheet.Shapes(1).Select
Selection.ShapeRange.Ungroup.Select
For
Each cse In Sheets("feuil1").Shapes
If cse.Name Like
"Check Box*" Then

cse.DrawingObject.Value = False
End If
Next
cse


ActiveSheet.Shapes("Picture
40").Select
Selection.ShapeRange.Regroup.Select
Range("A1").Activate

End
Sub

edit
bonjour Stapple, non la boucle n'est pas necessaire.
la macro devient:
HTML:
Sub decoche()
On Error Resume Next
ActiveSheet.Shapes(1).Select
Selection.ShapeRange.Ungroup.Select
ActiveSheet.DrawingObjects = False
ActiveSheet.Shapes("Picture 40").Select
Selection.ShapeRange.Regroup.Select
Range("A1").Activate
End Sub
 
Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Fonction SI
Réponses
23
Affichages
416
Réponses
10
Affichages
413
Réponses
23
Affichages
682
Réponses
2
Affichages
242
Retour