Remplacer la sélection de validation des données dans Excel

3

J'ai une liste avec le nom complet de l'article et une liste avec le nom abrégé de l'article.

Je voudrais créer une liste déroulante dans laquelle il affichera le nom long, mais ne montrera que le nom court lors de la sélection.

Y'a-t'il un quelconque moyen d'y arriver?

utilisateur455149
la source

Réponses:

3

Cela nécessitera VBA. Considérez ce scénario:

entrez la description de l'image ici

La validation des données dans la colonne D est alimentée par les valeurs LongList dans la colonne A.

Un événement de changement de feuille de travail agira sur la colonne D, effectuera un Vlookup pour obtenir la valeur courte et remplacera la valeur de la cellule en cours. Voici le code:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim short As String
    If Not Intersect(Target, Range("D:D")) Is Nothing Then
        short = Application.VLookup(Target.Value, Range("A1:B4"), 2, False)
        Application.EnableEvents = False
        Target = short
        Application.EnableEvents = True
    End If
End Sub

Cliquez avec le bouton droit sur l'onglet Feuille et sélectionnez "Afficher le code". Collez le code ci-dessus dans la fenêtre de code. Ajustez les références de cellule pour refléter votre classeur.

Teylyn
la source