XL 2016 RESOLU: Ouvrir un formulaire en cliquant sur une cellule

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

Mulder

XLDnaute Junior
Bonjour,

Je souhaite pouvoir ouvrir un formulaire en cliquant sur une cellule.
Je m'explique :
- j'ai une base de données, sommaire, qui contient des codes de produits en colonne A ;
- je souhaite, en cliquant sur le logo en colonne B, afficher un UserForm qui m'affiche les caractéristiques du produit (caractéristiques contenues dans une autre feuille) ;
- l'idée est donc que le formulaire se lance en cliquant sur la cellule, et également qu'il soit capable de se remplir en fonction de la valeur de la colonne d'à côté ;

L'exemple ci-joint pour mieux me comprendre.
Je n'ai pas codé le UserForm pour l'instant, l'idée est déjà que dans un premier temps, on puisse le lancer (en cliquant sur B1) et que s'y affiche les caractéristiques relatives au code produit en A1. Le reste, je saurai faire.

Edit : il va de soi que, comme la liste de codes peut s'allonger, je ne vais pas créer une macro par article? Je pense que l'on peut automatiser cela.

D'avance merci !!
 

Pièces jointes

Bonjour vgendron,

Merci pour ta réponse.
Je viens de tester en adaptant à mon fichier, ça fonctionne mais... (faut bien compliquer les choses) :
J'ai des sauts dans ma base de donnée, où les lignes sont vides.
Je pensais adapter de cette manière :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column <> 8 And Target.Value <> "" Then Exit Sub
UserForm1.Show
End Sub

Mais du coup ça fonctionne n'importe où... Bizarre si je conditionne avec "And" ?
Deuxième chose, comment j'affiche dans le UserForm, le code article de la case Ax (où x est la ligne où je clique) dans le Label2, qui me permettra d'alimenter le reste des informations ?
 
Impeccable pour la première partie des points en suspens.

Reste à gérer : "Deuxième chose, comment j'affiche dans le UserForm, le code article de la case Ax (où x est la ligne où je clique) dans le Label2, qui me permettra d'alimenter le reste des informations ?"

Une idée ?
 
Bon, je pense avoir trouvé en tâtonnant :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column <> 2 Or Target.Value = "" Then Exit Sub
    UserForm1.Label10.Caption = Target.Offset(0, -1).Value
    UserForm1.Show
End Sub

Ca fonctionne a priori sans problèmes...
Merci vgendron pour tes indications qui m'ont débloqué pour le reste !!
 
- 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

Discussions similaires

Réponses
5
Affichages
316
Réponses
3
Affichages
631
Retour