Recherche ds liste puis créer liste avec résultat

bahhbouh

XLDnaute Nouveau
Bonjour à tous,
depuis ce matin j'essaye de trouvé une solution à ce que je veux faire mais sans réussir.
Voila ce que j'ai: une colonne dans la 1ere feuille avec des références d'article qui commence tous par la taille ex: CP300xxxxx (CP300 étant la taille).
Ce que je veux: dans la 2ème feuille j'introduis ds une cellule une taille ex: CP300, une macro me cherche tous les article qui commence avec la taille désiré et me les copie une à une ds la colonne juste à coté de cellule de recherche.
Voila j'espère que c'est assez claire.
Je vous remercie d'avance pour votre aide.
 

ROGER2327

XLDnaute Barbatruc
Re : Recherche ds liste puis créer liste avec résultat

Re...
Voici un extrait de la liste (lignes 19 à 29) :
432BC3466__
432BC3467__
567C1B456__
567C1B457__
567C1B458__
567C3B459__
567C7B460__
123456789AC
3456CD734__
567C12167E_
567C13167E_
Il ne me semble pas ordonné en ordre croissant...
Comme je n'utilise la fonction EQUIV qu'avec 0 comme troisième paramètre, il n'y a pas lieu de travailler avec des listes ordonnées.
Si vous avez un problème, il vient d'ailleurs : il serait bon que vous déposassiez en pièce jointe un fichier d'étude avec quelques exemples de données litigieuses.​
A bientôt.
ROGER2327
 

ROGER2327

XLDnaute Barbatruc
Re : Recherche ds liste puis créer liste avec résultat

Re...
Pour déplace une formule un peu compliquée, on commence par l'analyser
et on la modifie proprement avant de dire qu'elle ne fonctionne pas :

Formule "modèle" en H2 pour les zones pour les zones A1:A40 et G2:G32
Code:
[FONT="Courier New"]=EQUIV(G2&"*";SI(NB.SI(G$2:G2;G2)=1;A$1:A$41;INDIRECT("A$"&H1+1&":A$41"));0)+SI(ESTNUM(H1);H1;0)[/FONT]

Pour l'adapter en F38, vous changez A1:A40 en C38:C44
Code:
[FONT="Courier New"]=EQUIV(G2&"*";SI(NB.SI(G$2:G2;G2)=1;C$38:C$45;INDIRECT("C$"&H1+38&":C$45"));0)+SI(ESTNUM(H1);H1;0)[/FONT]

Puis G2:G32 en E38:E44
Code:
[FONT="Courier New"]=EQUIV(E38&"*";SI(NB.SI(E$38:E38;E38)=1;C$38:C$45;INDIRECT("C$"&F37+38&":C$45"));0)+SI(ESTNUM(F37);F37;0)[/FONT]

Mais vous écrivez
Code:
[FONT="Courier New"]=EQUIV(E38&"*";SI(NB.SI(E$38:E38;E38)=1;C$38:C$44;INDIRECT("C$"&F37+1&":C$44"));0)+SI(ESTNUM(F37);F37;0)[/FONT]

J'ai indiqué que les zones comportent une mise en forme conditionnelle, mais vous n'en tenez pas compte.
Pas étonnant que vous trouviez des résultats farfelus !

Preuve que "ça ne foire pas" dans le classeur joint.​
Bonne journée.
ROGER2327
 

Pièces jointes

  • leonardo_2b.zip
    6.2 KB · Affichages: 100

Monique

Nous a quitté
Repose en paix
Re : Recherche ds liste puis créer liste avec résultat

Bonjour,

Une autre formule.
Pas besoin de colonnes intermédiaires, du coup.
Formule matricielle, à valider en appuyant simultanément sur ctrl, maj et entrée.
 

Pièces jointes

  • ExtraireLeonardo.zip
    4.1 KB · Affichages: 171

Statistiques des forums

Discussions
312 506
Messages
2 089 121
Membres
104 038
dernier inscrit
Helpme59