Recherche plusieurs valeurs

mfaeko

XLDnaute Nouveau
Bonjour,

J'ai besoin d'aide sur une formule. J'ai un tableau en Feuil2, avec colonne B des noms et en colonne C un descriptif (exemple : Nord,Sud,Est,Ouest qui sont listés en A2:A5 de la Feuil3).
En Feuil1 je voudrais un tableau qui m'affiche les noms en fonction de plusieurs descriptif.

Pour un descriptif j'y arrive avec cette formule que je mets en A Feuil1:
Code:
=SIERREUR(INDEX(Feuil2!$B$6:$B$500;SIERREUR(PETITE.VALEUR(SI(NON(ESTERREUR(CHERCHE("Nord";Feuil2!$C$6:$C$500)));LIGNE(Feuil2!$B$6:$B$500)-LIGNE(Feuil2!$B$5);1000);LIGNE()-LIGNE($B$1));""));"")
Ici j'ai donc une liste de tous les noms avec en colonne C "Nord"

Je voudrais modifier cette formule pour avoir en B Feuil1 la liste de tous les noms avec en colonne C "Nord" + la liste de tous les noms avec en colonne C "Sud"

J'ai essayé en rajoutant la formule ET mais ça n'a rien donné. Peut-être qu'en passant par une VBA ce serait plus facile mais je ne maîtrise pas assez le codage pour écrire un programme. Avez-vous des suggestions ?

Merci d'avance,
mfaeko
 

mfaeko

XLDnaute Nouveau
J'ai réussi à modifier une VBA pour résoudre mon problème.
Pour ceux que ça intéresse :

VB:
Sub test()
Dim wb As Workbook, IndexW As Integer, IndexR As Integer   
Application.ScreenUpdating = False
Chemin = Workbooks(ActiveWorkbook.Name).Path & "\"                      ' Chemin fichier courant
Set wb = Workbooks.Open(Chemin & "NOM DU FICHIER A COPIER.xlsm")   ' Chemin fichier à adapter si necessaire
Windows("NON DU FICHIER ACTUEL.xlsm").Activate
Range("A2:B1000").ClearContents
Set f = Workbooks("NOM DU FICHIER A COPIER.xlsm")
IndexW = 2        'A adapter (n°ligne du fichier actuel)
IndexR = 3        'A adapter (n°ligne du fichier a copier)
    While f.Sheets(2).Range("B" & IndexR) <> ""             ' Colonne 1
    Cells(IndexW, 2) = f.Sheets(2).Range("B" & IndexR)
    IndexR = IndexR + 1
    IndexW = IndexW + 1
    Wend
IndexR = 3
    While f.Sheets(2).Range("C" & IndexR) <> ""             ' Colonne 2
    Cells(IndexW, 2) = f.Sheets(2).Range("C" & IndexR)
    IndexR = IndexR + 1
    IndexW = IndexW + 1
    Wend

End Sub

La particularité était que mes deux fichier (source et destination) étaient différents mais dans le même dossier
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS