XL 2016 Multiple combobox recherche intuitive

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 !

Jean_Valjean

XLDnaute Nouveau
Supporter XLD
Bonjour,

J'essaie de remplacer de simples listes déroulantes par des combobox intuitives sur des plages de cellules. J'arrive bien à faire fonctionner la chose sur la première plage (forme). J'ai tenté de passer par ElseIf dans ma procédure Not Intersect pour ajouter l'un puis l'autre combo dont j'ai besoin (façonnage, accessoire), ça ne veut pas (Cf.fichier joint).

J'ai toujours la possibilité de coller un combo pour chaque ligne dont j'ai besoin afin de contourner la procédure Worksheet_SelectionChange mais c'est moins sympa.

Merci de vos idées ou pistes de réflexion.
 

Pièces jointes

Bonjour
Une piste à explorer
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 Application.EnableEvents = False
  If Not Intersect(Range("D19:D38"), Target) Is Nothing And Target.Count = 1 Then
    ' Instructions
  End If
 
  If Not Intersect(Range("D19:D38"), Target) Is Nothing And Target.Count = 1 Then
    ' Instructions
  End If
 
  If Not Intersect(Range("D19:D38"), Target) Is Nothing And Target.Count = 1 Then
    ' Instructions
  End If
 
  Application.EnableEvents = False
End Sub
 
Bonjour
Une piste à explorer
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 Application.EnableEvents = False
  If Not Intersect(Range("D19:D38"), Target) Is Nothing And Target.Count = 1 Then
    ' Instructions
  End If
 
  If Not Intersect(Range("D19:D38"), Target) Is Nothing And Target.Count = 1 Then
    ' Instructions
  End If
 
  If Not Intersect(Range("D19:D38"), Target) Is Nothing And Target.Count = 1 Then
    ' Instructions
  End If
 
  Application.EnableEvents = False
End Sub
Merci beaucoup, je viens d'explorer cette piste et elle fonctionne ! Je me compliquais bien la vie avec mon EsleIf...
 
rebonjour à tous,

If Not Intersect(Range("d19:d38"), Target) Is Nothing And Target.Count = 1 Then

Attention au Target.count sur des cellules fusionnées,
le count sera toujours = aux nombre de cellules fusionnées.
Donc le test n'est pas bon ...

Le classeur box à tout faire n'est pas finalisé, je vais vous en fournir un complet .
 
- 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
Retour