Afficher un bouton en fonction du resultat d'une cellule

Résolu
mimi13580 Messages postés 72 Statut Membre -  
mimi13580 Messages postés 72 Statut Membre -
Bonjour le forum,

Je cherche à faire une macro qui me permet d'afficher un bouton en fonction du résultat d'une cellule.

Je m'explique:
- si cellule O25="Conforme" de la feuille Paramètre alors afficher le bouton_1
- si cellule O25="Non-Conforme" de la feuille Paramètre alors afficher le bouton_2.

Merci de votre aide

4 réponses

  1. PlacageGranby Messages postés 402 Statut Membre 26
     
    Bonjour Mimi13580

    Vous écrivez vous-même conforme dans la cellule O25 ou c'est le résultat d'une formule ?

    Autre question : Avez vous utiliser le bouton des Contrôle formulaire, ou le bouton des Controle ActiveX ?
    1
    1. PlacageGranby Messages postés 402 Statut Membre 26
       
      Rapidement
      Private Sub Worksheet_Change(ByVal Target As Range)
      If UCase(Range("O25").Value) = "CONFORME" Then
          CommandButton1.Visible = True
          CommandButton2.Visible = False
      Else
          CommandButton1.Visible = False
          CommandButton2.Visible = True
      End If
      
      End Sub


      Dès qu'une valeur change n'importe ou dans la feuille, Excel vérifi le contenu de O25.

      Excel est très strict dans les comparaison de chaine. Conforme n'égale pas conforme.
      Les lettre majuscule minuscule sont pris en considération. C'est pourquoi j'utilise Ucase pour éviter une erreur potentielle.
      0
  2. Mimi
     
    Bonjour placageGranby

    Nom je n'ecris pas moi meme c'est une formule.
    Et pour les boutons j'ai mis controle formulaire.
    Par contre si cellule vide ne pas afficher de bouton.
    Merci d'avance
    1
    1. PlacageGranby Messages postés 402 Statut Membre 26
       
      Bonjour Mimi,

      Ci-bas, un liens vers un autre topic. La 7ieme réponse Didier Gonard explique très bien la différence entre un controle formulaire et un controle ActiveX
      https://www.developpez.net/forums/d1060605/logiciels/microsoft-office/excel/macros-vba-excel/acces-aux-proprietes-d-controle-place-directement-feuille-calcul/

      En gros, pour simplifier la programmation, il serait préférable de remplacer les bouton formulaire que tu as pour des bouton ActiveX

      Ci-bas, le code laissant les deux bouton invisible si O25 n'est pas une des deux valeurs.
      Private Sub Worksheet_Change(ByVal Target As Range)
      If UCase(Range("O25").Value) = "CONFORME" Then
          CommandButton1.Visible = True
          CommandButton2.Visible = False
      Elseif UCase(Range("O25").Value) = "NON-CONFORME" Then
          CommandButton1.Visible = False
          CommandButton2.Visible = True
      else
          CommandButton1.Visible = False
          CommandButton2.Visible = False
      End If
      0
  3. Mimi
     
    Merci, je vais faire l'essai et je reviens vers vous....
    Merci
    0
  4. mimi13580 Messages postés 72 Statut Membre
     
    Bonjour placageGranby, bonjour le forum

    Merci beaucoup pour cette macro...........
    Bravo:)

    mimi
    0