RechercheV plusieurs critères plusieurs feuilles

Bonjour le forum!

Voici mon problème. J'ai un fichier destination "testV1" où je dois compléter la colonne statut par les données du fichier source que j'ai nommé "SupportTestV1".

Cependant, ces données sont à remplir suivant 3 critères : l'appareil, le poste et l'OP. Si les trois critères, pour une ligne donnée, sont retrouvées dans le fichier "SupportTestV1" alors on vient prendre le statut contenu dans le fichier source et on le copie dans le fichier destination à la ligne correspondante.

J'ai tenté de faire des codes pour importer les données et faire un rechercheV mais là je bloque...

J'espère avoir été clair dans mes explications

Merci d'avance!

BZH83

Bonjour à tous,

Un essai :

36testv1-recupere.xlsm (125.60 Ko)

Crdlmt

Slt DjiDji59430!

Merci pour la rapidité de ta réponse! C'est top!

Serait-il possible de le faire sous forme de macro?

Merci!!

BZH83

Oui, mais pas par moi !

J'en suis totalement incapable.

Crdlmt

Merci beaucoup en tout cas pour ton aide, je vais essayer de mettre ça en VBA

Bonne journée!

Bonjour le Forum,

J'ai essayé de mettre sous forme VBA le code de DjiDji59430 mais ça ne fonctionne pas et je ne sais pas pourquoi...

Auriez-vous des idées?

11testv2.xlsm (126.03 Ko)

Bonjour,

La première question est de savoir si tu veux obtenir le résultat final ou bien la formule dans chacun de tes cellules ...

Pardon je me suis mal exprimé

Je souhaite à la fin avoir le résultat (I1, ok, livré, etc...) en colonne B

Je suis passé par la formule mais il faut que je le fasse par macro...

Re,

Ci-joint une proposition ...

Malheureusement, je n'ai pas les moyens de tester la macro ...

Sub ImportData2()
Dim i As Long, dl As Long
Dim ws As Worksheet, k As Worksheet
Dim sk As String
Dim x As Long

Application.ScreenUpdating = False

    'Fichier destination
    Set ws = ThisWorkbook.Sheets(1)
    'Fichier source
    Set k = Workbooks("SupportTestV1.xlsx").Sheets(1)

    ' Définir le String Complet pour l'instruction Evaluate ''''''''''''''''''''
    sk = "D:\Téléchargements\.Fichiers Excel\[SupportTestV1.xlsx]Feuil1"

    dl = ws.Range("A" & Rows.Count).End(xlUp).Row
    For i = 2 To dl
        If Cells(i, 1) <> "" Then
            x = k.Range("K" & Rows.Count).End(xlUp).Row
            Cells(i, 2) = Evaluate( _
        "=INDEX(" & sk & "!K6:K" & x & ",SUMPRODUCT((" & sk & "!B6:B" & x & "=E" & i & ")*(" & sk & "!C6:C" & x & "=A" & i & ")*(" & sk & "!G6:G" & x & "=C" & i & ")*ROW(1:6)))")
        End If
    Next i

Application.ScreenUpdating = True

End Sub

En espèrant que cela t'aide

Salut James007, le forum,

C'est top ce que tu as fait merci!

En revanche il me renvoi dans les cellules : #VALEUR!

Je ne vois pas à quoi cela serait dû

A+

Bonjour,

Ce qui serait vraiment Top ... c'est que cela fonctionne ...

Si tu n'obtiens que des #VALEUR! ...

c'est que probablement la définition du fichier ' source ' contient une erreur ...

Oui en effet ça serait mieux que ça fonctionne

J'ai pourtant refais plusieurs fois le chemin du fichier source mais sans grand résultats...

J'ai tenté une alternative comme ça, en mettant les deux fichiers dans un même dossier,

' Définir le String Complet pour l'instruction Evaluate ''''''''''''''''''''
    sk = ThisWorkbook.Path & "\SupportTestV1.xlsx" & ".Sheets(1)"

Mais ça me met le même message #VALEUR!

Re,

Si on devait vérifier les points importants ...

Premièrement :

Nous parlons bien de deux fichiers ouverts ... ?

Oui les deux fichier sont ouverts et enregistrés dans le même dossier.

Oui les deux fichier sont ouverts et enregistrés dans le même dossier.

Re,

Je ne sais pas ce que signifie pour toi ... " deux fichiers ouverts dans le même dossier... "

Tu veux sans doute dire répertoire ...

Justement peux-tu indiquer la totalité du chemin de ce répertoire commun à tes deux fichiers ...?

Oui oui le même répertoire

Quelque chose comme ça ?

C:\Users\a876198\Downloads\[SupportTestV1.xlsx]Feuil1

Enfin le chemin commun reste

C:\Users\a876198\Downloads

pour les deux fichiers

Re,

Parfait ...

Donc concrètement tu as besoin d'identifier le String de ton fichier Source avec :

"C:\Users\a876198\Downloads\[SupportTestV1.xlsx]Feuil1"

Est-ce-que nous sommes bien d'accord que c'est exactement comme cela que tu as modifié ta macro ... ?

Donc ... pour être totalement clair ...

 ' Définir le String Complet pour l'instruction Evaluate ''''''''''''''''''''
    sk = "C:\Users\a876198\Downloads\[SupportTestV1.xlsx]Feuil1"

Oui j'ai mis ça dans le string :

' Définir le String Complet pour l'instruction Evaluate ''''''''''''''''''''
    sk = "C:\Users\a876198\Downloads\[SupportTestV1.xlsx]Feuil1"
Rechercher des sujets similaires à "recherchev criteres feuilles"