Bouton visible si cellule <> ""

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

J

José

Guest
Bonjour tout le forum,

Je cherche une formule VB pour que sur ma feuil1 mes boutons restent invisible tant que certaines cellules sont vides.

[K6] <> '' alors CommandButton29.Visible = True
[K7] <> '' alors CommandButton30.Visible = True
...
[K13] <> '' alors CommandButton36.Visible = True

Comment faire???

Merci a tous
 
BOnjour

une proposition en pièce jointe.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim plage As Range
Set plage = Range('k6:k13')

If Application.Intersect(Target, plage) Is Nothing Then Exit Sub

If Target <> '' Then
ActiveSheet.Shapes('CommandButton' & Target.Row + 23).Visible =
True
Else
ActiveSheet.Shapes('CommandButton' & Target.Row + 23).Visible =
False

End If
End Sub

salut
[file name=Classeur1_20050601085253.zip size=14284]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur1_20050601085253.zip[/file]
 

Pièces jointes

Re Hervé !!!

Merci énormément pour ton aide précieuse, mais pourrais je abuser encore un peu.
En effet je voudrais compléter ceci mais ca devient un peu plus compliqué.

C'est ok pour k6:k13

Mais ensuite il me faudrait pour k15:k17
les boutons 37 à 39

k19:k20 les boutons 40 et 41

k22 le bouton 42

Comment compléter ceci ???

Merci encore a toi Hervé
 
re

Une proposition :

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Application.Intersect(Target, Range('k6:k13')) Is Nothing Then
&nbsp; &nbsp;
If Target <> '' Then
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 23).Visible =
True
&nbsp; &nbsp;
Else
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 23).Visible =
False
&nbsp; &nbsp;
End If
End If

If Not Application.Intersect(Target, Range('k15:k17')) Is Nothing Then
&nbsp; &nbsp;
If Target <> '' Then
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 22).Visible =
True
&nbsp; &nbsp;
Else
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 22).Visible =
False
&nbsp; &nbsp;
End If
End If

If Not Application.Intersect(Target, Range('k19:k20')) Is Nothing Then
&nbsp; &nbsp;
If Target <> '' Then
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 21).Visible =
True
&nbsp; &nbsp;
Else
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 21).Visible =
False
&nbsp; &nbsp;
End If
End If

If Not Application.Intersect(Target, Range('k20')) Is Nothing Then
&nbsp; &nbsp;
If Target <> '' Then
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 21).Visible =
True
&nbsp; &nbsp;
Else
&nbsp; &nbsp; &nbsp; &nbsp; ActiveSheet.Shapes('CommandButton' & Target.Row + 21).Visible =
False
&nbsp; &nbsp;
End If
End If


End Sub

pas testé, peut etre à adapter, mais l'idée y est.

il doit y avoir une manière plus élégante de faire ceci, mais je manque cruellement de temps aujourd'hui.

Salut
 
Re Hervé,

Tout d'abord MERCI pour ton aide précieuse. C'est génial.

Mais voici pour toi un nouveau probleme...

Le bouton qui s'affiche me sert a vider la cellule qui le rend visible.
C a d
je rempli k6 alors Bouton29.visible = true
Sub CommandButton29_click()
[k6] = ''
End sub

La cellule k6 est vide, mais le bouton est tjrs visible

J ai essayé avec
Sub CommandButton29_click()
[k6] = ''
CommandButton29.Visible = False
End sub

Mais rien n'y fait...

Une petite idée???

P.S.: ci joint les essai sur le premier bouton [file name=Classeur1_20050601162727.zip size=17089]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur1_20050601162727.zip[/file]
 

Pièces jointes

- 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

Réponses
3
Affichages
428
Retour