Faire disparaitre un bouton sous condition
Résolu
maud1681
-
Maud1681 Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Maud1681 Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je voudrais faire apparaître un bouton quand la cellule A35 contient "DG".
Voici mon code :
Le bouton n'est pas visible quand DG n'est pas présent mais il ne réapparait pas quand c'est le cas... je ne comprends pas pourquoi... pouvez-vous m'aider ?
Je voudrais faire apparaître un bouton quand la cellule A35 contient "DG".
Voici mon code :
Public Sub Gestion_Signature_DG()
If Range("A35").Value = "DG" Then
ActiveSheet.Shapes("CommandButton3").Visible = True
Else
ActiveSheet.Shapes("CommandButton3").Visible = False
End If
End Sub
Le bouton n'est pas visible quand DG n'est pas présent mais il ne réapparait pas quand c'est le cas... je ne comprends pas pourquoi... pouvez-vous m'aider ?
3 réponses
-
Bonjour,
Ce code fonctionne bien, cela dépend de la façon dont la Sub Gestion_Signature_DG est appelée !
Pour essai mettre le curseur surPublic Sub Gestion_Signature_DG()
et appuyer sur le touche F5
-
Bonjour à vous deux et merci pour vos réponses !
Je suis une grande débutante en VBA... j'ai essayé de copier/coller le code :
le bouton disparaît bien mais ne réapparait pas et quand je demande d'exécuter la macro en cliquant sur play, le bouton exécuter est grisé... est-ce normal ?
J'ai également essayé de faire F5 sur private sub, et pas de réaction...
J'ai encore besoin de vos lumières,
merci d'avance,
-
-
Bonjour,
il faut utiliser un événement de ta feuille.
Pour cela :- clic droit sur l'onglet de la feuille concernée
- visualiser le code
- copier/coller ce code :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address <> "$A$35" Then Exit Sub If Target.Value = "DG" Then ActiveSheet.Shapes("CommandButton3").Visible = True Else ActiveSheet.Shapes("CommandButton3").Visible = False End If End Sub
-
-
- Tu ne nous dit pas tout !
Ce n'est pas ta cellule A16 qui détermine l'apparition ou non de ton bouton, mais le choix dans ta cellule A1.
Par conséquent, ton code devient :Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address <> "$A$1" Then Exit Sub If Target.Value = Worksheets("PARAMETRES").Range("B4") Then ActiveSheet.Shapes("CommandButton3").Visible = True Else ActiveSheet.Shapes("CommandButton3").Visible = False End If End Sub - Yes !!!! super, ça marche !! merci beaucoup !!
J'en profite...
J'ai essayé de faire remonter le nom de l'utilisateur en cliquant sur un bouton :
Quand l'utilisateur clique, le bouton disparaît et son nom apparait dans la cellule qui est dessous.
J'ai utilisé le code : Range("A1") = Application.UserName
ça marche sauf que c'est le nom du propriétaire d'excel qui remonte...donc le nom de la société --> nul
Sais-tu quel code je peux utiliser pour faire remonter le nom de la personne qui a ouvert la session de l'ordi ?
-
-