Réinitialiser les boutons d'options active X excel 2007

Résolu
camaris29 Messages postés 3 Statut Membre -  
camaris29 Messages postés 3 Statut Membre -
Bonjour,

Dans mon cadre professionnel, j' ai été amené à créer un tableau avec des boutons d'options. En gros ce tableau comporte plusieurs dizaines de lignes sur 6 colonnes avec dans chaque case 2 ou 3 boutons d'option (oui/non/NA) donc au total un certain nombre pour ne pas dire un nombre certain...
Afin de tester ce tableau j'ai donc coché les boutons pour vérifier que je ne m'étais pas trompé dans la dénomination des groupes de boutons et qu'il n'interagissaient pas entre eux de façon incongrue...et mon erreur a été de sauvegarder après ce test. Du coup je me retrouve avec un document de base dont les cases sont "pré-remplies" .

J'ai bien fini par trouver comment réinitialiser chaque bouton un par un mais qu'est-ce que c'est long...donc au cas où je réitère mon ânerie de sauvegarder le document quand il n'est plus vierge, je me permet de vous poser les questions suivantes ( je n'ai pas trouvé réponse sur la toile...):

- Comment créer un bouton (soit sur la feuille, soit dans dans la barre de menu) et lui affecter une macro permettant de réinitialiser tout ces boutons d'option.

- Comment écrire cette macro.

Je précise que je n'ai jamais eu de formation excel et que j'ai pas mal tâtonné pour arriver à insérer des boutons d'option dont je ne connaissais même pas l’existence il y a quelques jours....

Merci à ceux qui prendront le temps d'éclairer ma lanterne

Camaris29

3 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    adaptez le nom de la feuille
    Sub RAZ_Case_a_Option()
        Dim Obj As OLEObject
        'boucle sur les objets de la feuil1
        For Each Obj In WorkSheets("Feuil1").OLEObjects
            'verifie s'il s'agit d'un Case a Option
            If TypeOf Obj.Object Is MSForms.OptionButton Then
                'raz bouton
                Obj.Object.Value = False
            End If
        Next Obj
    End Sub
    
    0
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    perso, à ta place, j'abandonnerais les case à cocher.
    Trop c'est galère à maintenir (tu as testé...) et surtout excel n'aime pas trop quand il y en a beaucoup (beaucoup pour lui c'est pas beaucoup pour moi, bref).
    Tu peux avantageusement les remplacer par une validation de données par liste.
    https://www.cjoint.com/c/FABphQmcxbw
    eric
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Bonjour eriiic,

      J'ai hesite a lui proposer, car en effet bien plus simple
      0
    2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Moi j'en suis revenu des objets sur feuille.
      La dernière fois j'en avais 6 (bon d'accord, des formes en 3D, j'avais abusé mais je pensais qu'au 21e siècle ça serait possible), et bien je ne pouvais plus copier-coller un bouton et modifier son texte sans que ça plante méchamment... Refait sur un classeur neuf après avoir fermé excel : idem
      eric
      0
  3. camaris29 Messages postés 3 Statut Membre
     
    bonsoir
    Merci beaucoup, ça c'est de la réponse rapide!
    Effectivement l'option validation de données par liste semble bien plus simple à mettre en place et correspond parfaitement à mes besoins.

    Par contre, béotien un jour...béotien toujours...., je trouve ça où? (je n'ai pas excel à la maison...)

    Merci à vous deux pour votre aide

    Camaris29
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      dans Données
      0
      1. camaris29 Messages postés 3 Statut Membre > eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci beaucoup,
        Bonne journée
        0