Besoin d'une liste de choix en popup

Banosjo

XLDnaute Junior
Bonjour,

Je suis toujours en apprentissage et cela fait une partie de la journée que j'essaie de programmer une liste de choix en popup, c'est à dire que :

- Dans la cellule H10, j'ai par défaut la valeur Général
- Je veux pouvoir cliquer sur la cellule (ou un bouton couvrant la cellule) et avoir
juste à côté un popup contenant les choix Général, Spécialisé et
Ultra-spécialisé
- Je veux pouvoir sélectionner une des trois options en double-cliquant simplement
dessus
- Le popup pourrait aussi contenir simplement les trois options avec des boutons
radios (le bouton radio de Général étant sélectionné) et sur sélection d'un
choix (par un simple clic) le popup disparait et le nouveau choix est inscrit dans
la cellule

Est-ce faisable ? J'arrive à faire des listes de choix mais ça ne convient pas et je
ne trouve pas de pistes de solution.

Merci de m'éclairer !
 

Papou-net

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Bonjour Banosjo, les participants,

Voici ma solution qui reproduit au plus près une liste "pop-up".

Lorsque la cellule H10 est sélectionnée, le contrôle ActiveX "ListBox1" est rendu visible. Je n'ai pas prévu de le rendre invisible lors du choix d'une option mais uniquement lorsqu'on change de cellule. Ainsi, en cas d'erreur, on peut rectifier sans avoir à quitter puis à revenir dans la cellule H10.

La liste des options est dans la colonne "O:O". Bien sûr, il est possible, et même souhaitable, de masquer cette colonne.

Espérant avoir contribué.

Coprdialement.
 

Pièces jointes

  • Banosjo.xls
    24.5 KB · Affichages: 208

Banosjo

XLDnaute Junior
Re : Besoin d'une liste de choix en popup

Re

Merci, c'est EXACTEMENT ce que j'avais en tête !!!

Je ne suis pas sûr cependant de comprendre le code, qui semble pourtant si simple .. on dirait qu'il manque un bout ? C'est à dire que :
- je ne vois pas dans le code que les options de la ListBox1 se trouve dans le range O1 à O3 (c'est peut-être dans une feuille ListBox1 qui est masquée ?)
- j'aimerais comprendre pour pouvoir éventuellement ajouter des des options dans ma Listbox1
- est-ce que mon Target.Address pourrait être un Range, si par exemple je veux que les cellules H1 à H10 ait la même fonction (choix multiples sur sélection) ?

Merci de m'aider à comprendre !


Suite :

Voici une autre variante : la liste se masque lorsqu'on clique sur une option.

Cordialement.
 

Banosjo

XLDnaute Junior
Re : Besoin d'une liste de choix en popup

Re

Bon, j'ai compris !!

Je me demande juste s'il y a un moyen d'utiliser la même ListBox pour plusieurs cellules (ex. : H1 à H10) ou s'il faudra créer une ListBox par cellule comme dans le fichier joint ?

Merci encore !!



Re

Merci, c'est EXACTEMENT ce que j'avais en tête !!!

Je ne suis pas sûr cependant de comprendre le code, qui semble pourtant si simple .. on dirait qu'il manque un bout ? C'est à dire que :
- je ne vois pas dans le code que les options de la ListBox1 se trouve dans le range O1 à O3 (c'est peut-être dans une feuille ListBox1 qui est masquée ?)
- j'aimerais comprendre pour pouvoir éventuellement ajouter des des options dans ma Listbox1
- est-ce que mon Target.Address pourrait être un Range, si par exemple je veux que les cellules H1 à H10 ait la même fonction (choix multiples sur sélection) ?

Merci de m'aider à comprendre !
 
Dernière édition:

Banosjo

XLDnaute Junior
Re : Besoin d'une liste de choix en popup

Re

J'essaie d'utiliser la ListBox1 pour les cellule H2 à H10 avec le code :

Private Sub ListBox1_Click()
ListBox1.Visible = False
ActiveCell.Offset(1, 0).Select
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Y As Byte
With ListBox1
For Y = 2 To 10
If Target.Address = ActiveSheet.Cells(Y, 8) Then
.LinkedCell = ActiveSheet.Cells(Y, 8)
.Top = ActiveCell.Top
.Left = ActiveCell.Left + ActiveCell.Width + 6
.Visible = True
Else
.Visible = False
End If
Next Y
End With
End Sub

Mais ça ne fonctionne pas .. qu'est-ce qui cloche ?

Merci !
 

YANN-56

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Bonjour Banosjo, aux participants, et à ceux qui passeront par ici,

Voici un exemple d'utilisation d'un "Popup", Je l'ai déposé ici:
Cijoint.fr - Service gratuit de dépôt de fichiers

J'utilise, pour l'instant une image.... Je vais regarder à l'éviter.

Quant aux actions: Presque tout est imaginable!

Tu regarde, et tu me dis.

Amicalement.

Yann
 

YANN-56

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Re,

Voici donc le même truc sans image. :)

Si le principe te convient, je suis disposé à aller plus loin avec ton idée.

A te lire,

Yann

P.S.: A noter que j'ai des coupures de connexion intempestives, ici, dans ma brousse.
Mon silence pourrait en être issu.... Mais pas mon abandon.
 

Pièces jointes

  • POP_2.xls
    27 KB · Affichages: 141
Dernière édition:

Banosjo

XLDnaute Junior
Re : Besoin d'une liste de choix en popup

Merci Yann,

La solution de Papou-net plus haut (avec son fichier Banosjo1.xls) me convient parfaitement mais il me reste à trouver comment pouvoir utiliser la même ListBox pour un Range de cellules (ex.: avoir le même choix en popup pour les cellules H1 à H10 et en avoir un autre pour les cellules J1 à J10). J'ai essayé un code comme :

Private Sub ListBox1_Click()
ListBox1.Visible = False
ActiveCell.Offset(1, 0).Select
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Y As Byte
With ListBox1
For Y = 2 To 10
If Target.Address = ActiveSheet.Cells(Y, 8) Then
.LinkedCell = ActiveSheet.Cells(Y, 8)
.Top = ActiveCell.Top
.Left = ActiveCell.Left + ActiveCell.Width + 6
.Visible = True
Else
.Visible = False
End If
Next Y
End With
End Sub

Mais ça ne fonctionne pas .. :(

En attendant vos solutions, je continue à essayer !
 
Dernière édition:

YANN-56

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Re Banosja,

Je connais bien la compétence de mon ami Papounet,
Je lui fais, au passage, un amical Salut. :)

On va donc ouvrir une compétition amicale pour défendre nos regards sur le sujet. :confused:

De mon coté, j'ai déjà rectifié mon code pour donner une souplesse dans le choix
des cellules sélectionnées (Voire des Lignes ou Colonnes)

Je ne suis pas coutumier du travail sur une page Excel; même nul!!!

C'est donc à mon tour de te remercier de m'avoir poussé à apprendre.

A plus tard; je vais de ce pas peaufiner ma bidouille pour répondre à ta dernière demande.

Petite note cependant:
Il y a une autre solution qui serait d'ouvrir un petit USF au droit de la cellule choisie.
Dans ce dernier l'on pourrait alors y mettre foultitude de contrôle suivant les besoins.

C'est dans beaucoup de cas celle que j'ai adoptée par ailleurs.

Yann
 

YANN-56

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Banosja,

Regarde mon dernier jet.

De mon coté je ne peux pas aller plus loin;
car il me faudrait avoir tous les tenants et aboutissants de ton projet.

A toi d'adapter suivant tes besoins concrets.
Il y a une caisse de possibilité en jouant avec les variables... Voir aussi du coté "SelectCase"

Il y a des "Ifs" qui peuvent être plantés ailleurs ou remplacés par autres méthodes.

Je reste disponible si tu tentes de te servir de cette façon de faire,
mais en tout état de cause; je te souhaite bon aboutissement pour la suite.

Amicalement.

Yann
 

Pièces jointes

  • POP_3.xls
    20.5 KB · Affichages: 103
Dernière édition:

Papou-net

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Bonsoir Banosjo, YANN-56,

@ Banosjo : désolé, j'étais absent dans la journée et je viens seulement prendre connaissance de ta nouvelle demande. Comme je l'avais un peu anticipée, je n'ai pas eu grand-chose à faire pour mettre la macro à niveau. Voici donc ma réponse avec un seul ListBox, qui vient se placer automatiquement à droite de la cellule dans la zone H1:H10 et J1:J10.

Espérant avoir répondu à ton attente.

@ YANN-56 : je te remercie pour ton compliment, et je t'adresse à mon tour mes plus sincères salutations.

Cordialement à tous.
 

Pièces jointes

  • Banosjo3.xls
    26.5 KB · Affichages: 109

Papou-net

XLDnaute Barbatruc
Re : Besoin d'une liste de choix en popup

Banosjo,

Après avoir relu ton fichier (Banosjo2.xls), je t'envoie une copie adaptée avec le code de mon envoi précédent.

Cordialement.
 

Pièces jointes

  • Copie de Banosjo2.xls
    35.5 KB · Affichages: 124

Discussions similaires

Réponses
3
Affichages
563
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 429
Messages
2 088 350
Membres
103 822
dernier inscrit
kader55