Problème sur worksheet_Change

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

M

Mashiara

Guest
Bonjour à tous!
Comme c'est marqué dans le titre, j'ai un problème avec worksheet_Change.

J'ai un code qui active des boutons quand la cellule "Branche" contient certains noms:

Sub Worksheet_Change(ByVal Cible As Range)
Dim Branche As String
If Not Intersect(Cible, Range("Branche")) Is Nothing Then
Branche = Range("Branche").Value
' -----
If Branche = "Boulangeries_Artisanales" Then
BoutonBoulangeries1.Visible = True

Else
BoutonBoulangeries1.Visible = False

End If
' -----
If Branche = "Centres_Equestres" Then
BoutonCentresEquestres1.Visible = True
Else
BoutonCentresEquestres1.Visible = False
End If
' -----
If Branche = "Golf" Then
BoutonGolf1.Visible = True
Else
BoutonGolf1.Visible = False
End If
' -----
End If
End Sub



Ce que je voudrais c'est remettre le même code (en gros) mais à partir d'une autre cellule (Branche2) qui ferait apparaitre un bouton différent. Mais quand je colle le même code, il me dit qu'il y a un problème de compilation au niveau de la ligne:Sub Worksheet_Change(ByVal Cible As Range)

Pourriez-vous m'éclairer SVP?
 
Re : Problème sur worksheet_Change

Bonjour,

Un truc dans le genre à adapter et à tester :
VB:
Sub Worksheet_Change(ByVal Cible As Range)
Dim Branche As String
If Not Intersect(Cible, Range("Branche")) Is Nothing Then
  Branche = Range("Branche").Value
  ' -----
  BoutonBoulangeries1.Visible = IIf(Branche = "Boulangeries_Artisanales",True, False)
  ' -----
  BoutonCentresEquestres1.Visible = IfI( Branche = "Centres_Equestres",True,False)
' -----
BoutonGolf1.Visible = IIf( Branche = "Golf" ,True,False)
ElseIf Not Intersect(Cible, Range("Branche2")) Is Nothing Then
  Branche = Range("Branche2").Value
  ' -----
  BoutonBoulangeries2.Visible = IIf(Branche = "Boulangeries_Artisanales",True, False)
  ' -----
  BoutonCentresEquestres2.Visible = IfI( Branche = "Centres_Equestres",True,False)
  ' -----
  BoutonGolf2.Visible = IIf( Branche = "Golf" ,True,False)
End If
End Sub
 
Re : Problème sur worksheet_Change

Salut Mashiara et le forum
Le module où tu mets Worksheet_Change est un module de classe => même si ça ne te plait pas, il faut respecter la classe.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Branche As String
If Not Intersect(Target, Range("Branche")) Is Nothing Then
BoutonBoulangeries1.Visible = False
BoutonCentresEquestres1.Visible = False
BoutonGolf1.Visible = False

Select Case Range("Branche")
    Case "Boulangeries_Artisanales"
        BoutonBoulangeries1.Visible = True
    Case "Centres_Equestres"
        BoutonCentresEquestres1.Visible = True
    Case "Golf"
        BoutonGolf1.Visible = True
End Select
End Sub
Tu as un certain nombre de macro programmées pour réagir à certains évènements. Excel met à jour les variables qui lui ont été définies, et pas celle que toi tu définis.
A+
 
Re : Problème sur worksheet_Change

Excusez moi pour le retard de ma réponse, j'ai été pris sur un autre travail...
Le système de bouton que je voulais faire paraissait trop compliqué à mon tuteur, j'ai donc changé ma façon de faire (qui marche tout aussi bien et moins tordue^^)
Par contre j'ai un nouveau problème:
En plus des feuille déja présentes, il y en a d'autres associé à "golf" par exemple. Mais je voudrais qu'il n'y ai que celle correspondant au nom sélectionné qui s'affiche, et que les autres soient masquées. Auriez-vous une petite piste pour moi svp?
Merci en tout cas d'avoir répondu à ma question précédente!
 
Re : Problème sur worksheet_Change

Salut Mashiara et le forum
Pas de précisions dans la question donc...
Sélectionne/active la feuille voulu, puis fait une boucle pour masquer toutes les feuille, sauf la feuille active
A+
 
- 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
9
Affichages
501
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
7
Affichages
144
Retour