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

XL 2016 RechercheV avec plusieurs résultats

Ethlios

XLDnaute Junior
Bonjour à tous,

Je suis à la recherche d'une formule similaire à rechercheV. Mon but est de partir d'un critère, dans mon exemple une voiture, et d'afficher toutes les possibilités de couleur liée. Dans mon tableau de donnée on trouvera donc l'information de 3 couleurs associée au critère voiture, je veux donc essayer d'avoir une formule ou une macro pouvant me sortir cette information.

Merci d'avance pour votre aide !

Ethlios.
 

Pièces jointes

  • Exemple forum.xlsx
    9.6 KB · Affichages: 21
Solution
Bonjour à tous
Même si @Ethlios est sous 2016 et donc n'as pas accès aux nouvelles formules, il faut dire que 365 est quand même plus maniable pour ce genre de demande :
VB:
=JOINDRE.TEXTE("/";1;UNIQUE(FILTRE(Tableau1[Couleur];Tableau1[Type]=F9;"")))

Avec une autre version (toujours 365) dans le classeur : choix du véhicule en F9
Cordialement

Englobe

XLDnaute Nouveau
Bonjour sylvanu,

Question
J'ai formaté la ligne 5 pour une ajustement automatique de la hauteur mais quand des lignes vertes s'ajoutent ou se retirent, la hauteur de ligne ne s'ajuste pas automatique. Donc des résultats ne sont pas visibles dans la cellules ou que des sauts de lignes demeurent présents. Je dois le faire manuellement à chaque fois.

Pouvons-nous ajouter un code pour que suite à l'instruction "RenvoiResultat = Mid(RenvoiResultat, 2)" la hauteur de ligne de la rangée 5 s'ajuste automatique?
VB:
Function RenvoiResultat(Choix As Variant, Plage As Variant)
    c = Choix.Interior.ColorIndex
    For Each cell In Plage
        If Range(cell.Address).Interior.ColorIndex = c Then RenvoiResultat = RenvoiResultat & Chr(10) & Range(cell.Address)
    Next cell
    RenvoiResultat = Mid(RenvoiResultat, 2)
    ' Ajouter ici un code pour que la ligne 5 s'ajuste automatiquement selon les contenus?
End Function

Merci
 

Pièces jointes

  • test1.xlsm
    19.7 KB · Affichages: 1

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir,
Je ne sais pas ajuster la hauteur de ligne au sein d'une fonction.
Je vous propose en attendant une solution plus sioux, un bouton avec :
VB:
Sub Hligne()
    Rows("4:9").EntireRow.AutoFit
    Calculate
End Sub
J'ai rajouté "application.volatile" dans vos fonctions pour faire un recalcul après le réglage de hauteur.
 

Pièces jointes

  • test1 (1).xlsm
    20.6 KB · Affichages: 3

Englobe

XLDnaute Nouveau
Merci sylvanu,
Je vais l'utiliser en attente.
BFDS
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir,
S'il s'avère que votre demande ne puisse être satisfaite, alors autant simplifier avec cette macro :
VB:
Sub Remplit()
DL = [A65500].End(xlUp).Row
Set Plage = Range("A13:A" & DL)
For L = 4 To 9
    Cells(L, "B") = RenvoiResultat(Cells(L, "A"), Plage)
    Cells(L, "C") = CompterCouleur(Plage, Cells(L, "A"))
Next L
Rows("4:9").EntireRow.AutoFit
End Sub
Les cellules ne comportent plus de fonctions, l'ensemble est calculé en VBA.
 

Pièces jointes

  • test1 (V2).xlsm
    20.5 KB · Affichages: 3

Discussions similaires

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