VBA macro Desactivation d'un bouton

Résolu
Bonjour, Je suis actuellement bloqué par ce problème sans arriver à m'en dépêtrer:

Je veux créer une petite macro qui, lorsqu'elle sera activée, va empêcher la modification et l'utilisation du bouton btn1. A force de chercher, j'ai trouvé des bouts de code qui auraient pu marcher, mais je n'obtiens que l'erreur:"Erreur de compilation: utilisation incorrecte du mot clé Me".

Ma ligne de code est la suivante:

Me.btn1.Enabled = False

Si quelqu'un pouvait m'aider ou me corriger, je lui en serai éternellement reconnaissant.

Pour info, je travaille sous Excel 2010, mais le code doit être valide pour un Excel 2003 (ordres du patron).



'Un problème sans solution est un problème mal posé.'
- Albert Einstein

6 réponses

  1. bonjour

    si ton bouton n'est pas dans un Userform, le Me. est à supprimer
    si le code n'est pas dans le module de la feuille où se trouve le bouton
    sheets(nom_feuille).bt1.Enabled=false

    bonne suite
    1. Merci, mais il semble que ça ne marche pas. tout ce que j'obtiens c'est le message

      "propriété ou méthode non gérée par cet objet"

      voila le code de ma macro, au cas où j'aie fait une erreur:

      Sub verrouiller_cases()
          Dim feuille As String
          
          feuille = ActiveSheet.Name
          
          MsgBox feuille
          
          Sheets(feuille).btn1.Enabled = False
          Sheets(feuille).btn2.Enabled = False
          Sheets(feuille).btn3.Enabled = False
      End Sub

      1. est ce que tes boutons sont des controles active X (créés à partir de la boite à outils controles) ?
        peux tu envoyer ton fichier au format excel 2003 (fichier/enregistrer sous/type ...) sur cjoint.com et joindre le lien obtenu à ton prochain message
        1. Non, mes boutons sont des contrôles de formulaires.

          Je ne peux pas envoyer mon fichier: je travaille sur des données confidentielles et sans ces données, plus rien ne fonctionne ... mais ce que je peux te dire, c'est que mon fichier est enregistré sous le format .xls car la plupart des gens de l'entreprise qui vont l'utiliser n'ont que la version 2003 d'excel.
          j'essaierai quand même de faire un envoi dans quelques heures du morceau en question de mon fichier en modifiant toutes les autres formules liées afin que tu puisses voir de visu de quoi il retourne.
          1. bon, il ne te reste plus qu'à oublier la boite à outils formulaires et mettre des boutons avec la boite à outils contrôles, qui possèdent une foule de propriétés dont Enabled, et sont plus faciles à gérer

            le mode d'emploi
            ouvrir la boite à outils controles
            la petite equerre bleue en haut à gauche permet de passer du mode Création au mode Exécution
            passes en mode creation
            selectionne le bouton et mets le dans la feuille
            clic-droit sur le bouton pour voir/modifier ses propriétés
            clic-clic sur le bouton pour y affecter un code
            tu peux bien sur depuis une autre procedure modifier ses propriétés (dont Enabled)
            etc ...
            retour sur la feuille
            passer en mode Execution (l'équerre bleue)

            et c'est parti

            bon courage
            1. A bah oui, en effet, ça va beaucoup mieux ^^ Merci. Pour ma défense, je suis programmeur, je ne connais pas bien les logiciels en eux même, mais j'ai la chance d'apprendre assez vite.