Liste déroulante intégrée dans une formule

litelsousa

XLDnaute Occasionnel
Bonjour,

Il est possible de remplir une cellule selon une liste avec
=RECHERCHEV(B18;'N° d''affaire'!A1:E664;3;FAUX)

Mais est-il possible d'intégrer cette liste dans la même cellule que cette formule?

Sur le fichier joint, j'aimerais avoir la liste déroulant qui est en B18 dans la cellule A18

Et le résultat me donnerais
CONCERNE : 4431 Affaire 7

Merci pour votre aide
 

Pièces jointes

  • facture.xlsx
    23.8 KB · Affichages: 23

vgendron

XLDnaute Barbatruc
Bonjour

si je comprend bien. la réponse est :
à ma connaissance, NON, tu ne peux pas avoir dans une meme cellule à la fois une formule ET une liste de validation.
il te faut donc une cellule qui permet de sélectionner le numéro (tu peux la rendre "invisible": ==> cellule jaune)
et ensuite, tu peux concatener les résultats dans une seule cellule

voir PJ
NB: j'ai modifié créé des zones nommées
 

Pièces jointes

  • facture.xlsx
    22.7 KB · Affichages: 19

job75

XLDnaute Barbatruc
Bonjour litelsousa, vgendron,

Avec VBA on fait ce qu'on veut, voyez le fichier joint et cette macro :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not IsNumeric(CStr([A18])) Then Exit Sub
Dim i As Variant, affaire$
With Feuil5 'CodeName
    i = Application.Match([A18], .[A:A], 0)
    If IsError(i) Then affaire = "n/a" Else affaire = .Cells(i, 3)
End With
[A18] = "CONCERNE : " & [A18] & " " & affaire
End Sub
A+
 

Pièces jointes

  • facture(1).xlsm
    29.7 KB · Affichages: 27

job75

XLDnaute Barbatruc
Bonjour litelsousa, vgendron, le forum,
Quand on utilise un VBA, il est impossible de rajouter une lige ou une colonne?
Fichier (2) avec cellule et plage nommées :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not IsNumeric(CStr([Choix])) Then Exit Sub
Dim i As Variant, affaire$
i = Application.Match([Choix], [Num_affaire], 0)
If IsError(i) Then affaire = "n/a" Else affaire = [Num_affaire].Cells(i, 3)
[Choix] = "CONCERNE : " & [Choix] & " " & affaire
End Sub
Bonne journée.
 

Pièces jointes

  • facture(2).xlsm
    35 KB · Affichages: 18

job75

XLDnaute Barbatruc
Re,

Fichier (2 bis) avec la fonction VLookup (RECHERCHEV) :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not IsNumeric(CStr([Choix])) Then Exit Sub
Dim affaire As Variant
affaire = Application.VLookup([Choix], [Num_affaire].Resize(, 3), 3, 0)
If IsError(affaire) Then affaire = "n/a"
[Choix] = "CONCERNE : " & [Choix] & " " & affaire
End Sub
A+
 

Pièces jointes

  • facture(2 bis).xlsm
    35.1 KB · Affichages: 19

Discussions similaires

Réponses
2
Affichages
328
Réponses
12
Affichages
377

Statistiques des forums

Discussions
312 668
Messages
2 090 739
Membres
104 643
dernier inscrit
adriano22