Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Dans la même cellule:liste de choix et renvoi d'une valeur associée

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

Océane

XLDnaute Impliqué
Bonsoir le forum
Mon titre et long, mais pour une future recherche ce doit etre plus simple.
Toujours est-il que mon exemple lui est simple.
Le Pb doit se résoudre avec la combinaison d'une liste de choix et d'une recherche verticale; mais je sèche.
Si une As des formules peut venir a mon secours....!
Je ne serai pas décu s'il s'agit d'un garcon.
Bonne semaine à tous
 

Pièces jointes

Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

ODVJ à dit:
Bonsoir,

voici une idée de solution.

je te la laisse découvrir.

A+
Bonjour ODVJ

Super et merci; Dans le principe c'est exactement ce qu'il me faut, mais comment faire pour que les mots de la liste de choix ne soient pas tronqués et sans avoir à élargir la colonne B ?
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Je n'y connais pas grand chose en macro, mais si cà peut simplifier ton travail, la valeur renvoyée peut etre la premiere lettre du mot de la liste de choix; par exemple G pour garage; M pour maintenance; R pour réparation, mais ce qui est important pour mon tableau c'est que la colonne B ne soit pas plus large que la valeur d'une lettre et que la liste soit lisible entierement.
A+
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Bonjour,

Autre solution :

Après avoir mis la liste de validation en place (liste nommée), retourner dans le menu Insertion Nom Définir et modifier les références de la plage nommée, par ex. de $A$1:$A$20 en $A$1:$B$20.

La liste de validation affichera le contenu des 2 colonnes, ligne par ligne.
Au lieu de cliquer sur la valeur de la colonne A, cliquer sur celle en-dessous, c'est la valeur associée.

mjo
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Bonjour à tous,

pour la largeur de la liste de validation, voici un code qui élargit la colonne B le temps de la saisie puis la repositionne à sa largeur initiale.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
vlarg = 1.86
If Not (Intersect(Target, Range("$B$2:$B$17")) Is Nothing) Then
    If Intersect(Target, Range("$B$2:$B$17")).Address = Target.Address Then
        Target.ColumnWidth = 6
        Application.EnableEvents = False
        If IsNumeric(Target.Value) Then Target.Value = Chr$(Target.Value + 64)
        'Target.ColumnWidth = vlarg
        Application.EnableEvents = True
    End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
vlarg = 1.86
If Not (Intersect(Target, Range("$B$2:$B$17")) Is Nothing) Then
    If Intersect(Target, Range("$B$2:$B$17")).Address = Target.Address Then
        Target.ColumnWidth = 6
        Application.EnableEvents = False
        If IsNumeric(Target.Value) And Not (IsEmpty(Target.Value)) Then Target.Value = Chr$(Target.Value + 64)
        Application.EnableEvents = True
    End If
Else
    Columns(2).ColumnWidth = vlarg
End If
End Sub
cordialement
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Ok ODVJ mais maintenant c'est le mot entier qui est saisi et non pas une seule lettre.
Quand à ta solution MJO excel n'en veut pas. D'aprés lui il faut faire réference a une seule colonne dans la formule.

Merci a vous deux pour le temps de recherche
A+
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Bonjour,

là je ne comprends plus !

lorsque tu sélectionnes une des cellules B3:B17, la colonne B s'élargit pour que la liste de validation qui affiche les noms entiers soit lisible.
Après sélection dans la liste de validation, la valeur affichée est une lettre et, tant que tu restes dans la zone B3:B17, la colonne garde sa largeur pour le cas où tu voudrais faire une autre saisie.
Si tu quittes la zone B3:B17, la colonne B reprend sa taille initiale.
Et le résultat affiché après saisie reste sous forme d'une lettre.

en tout cas, chez moi c'est ce que ça fait.

A+
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Bonjour,

hé oui.... tu n'as pas utilisé ma zone de validation.
c'est pour cela que ça ne marche pas.

si tu regardes de plus près ma zone de validation, tu verras que le contenu de la cellule n'a rien à voir avec ce que tu vois.

donc pour que ça marche, reprend mon tableau de valeur et colle le sur le tien.

pour que tu comprennes, la zone de validation ne contient qu'une séquence de 1 à 7 habilée par un format cellule particulier.

A+
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Ok je n'avais pas gaffe. ça marche;
Par contre je ne sais pas pourquoi quand on efface la valeur saisie dans la colonne B avec la liste de choix un @ vient s'inscrire. !

A+
 

Pièces jointes

Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Bonsoir,

il faut ajouter And Not (IsEmpty(Target.Value) dans la première procédure :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
vlarg = 1.86
If Not (Intersect(Target, Range("$B$2:$B$17")) Is Nothing) Then
    If Intersect(Target, Range("$B$2:$B$17")).Address = Target.Address Then
        Target.ColumnWidth = 6
        Application.EnableEvents = False
        If IsNumeric(Target.Value) And Not (IsEmpty(Target.Value)) Then Target.Value = Chr$(Target.Value + 64)
        'Target.ColumnWidth = vlarg
        Application.EnableEvents = True
    End If
End If
End Sub

je l'avais mis dans la 2ème procédure mais pas dans la 1ère!!

A+
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Et bien cette fois c'est bon, çà correspond exactement à ce que je voulais; mais j'avoue ne pas comprendre la facon dont tu as transformé la liste de choix !

En cliquant en haut à gauche, dans la zone nom je retrouve ma liste et mes lettres, mais dans un ordre ?? et cela me renvoie sur des cellules vides ?

Si tu as encore un peu de temps pour m'expliquer.... Grand merci tout de même.
 

Pièces jointes

Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

Bonsoir,

en G1:G7, j'ai mis la séquence numérique 1, 2, 3, 4, 5, 6, 7.

sur G1, j'ai mis le format personnalisé "Garage"
sur G2, j'ai mis le format personnalisé "Atelier"
sur G3, j'ai mis le format personnalisé "Course"
etc.....

les macro évènementielles Worksheet_change et Worksheet_selectionchange, après les vérifications d'usage sur le positionnement et le contenu, affectent à la cellule target la valeur Chr$(Target.Value + 64) qui est le caractère dont le code ascii est celui du "@" (64) augmenté de la valeur numérique du choix opéré dans la liste de diffusion, choix caché derrière le format personnalisé déjà décrit.

globalement je ne travaille que sur du numérique déguisé.

A+
 
Re : Dans la même cellule:liste de choix et renvoi d'une valeur associée

" Ouarf " c'est du haut vol au niveau programation.
Excuse ma lourdeur mais j'ai compris uniquement le format personalisé, que je saurais refaire, un petit peu le fonctionnement avec l'instruction, mais pas du tout la séquence numérique que je ne saurais pas refaire.
Comment réalises tu la séquence numérique en G1:G7 ?
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

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…