Problème avec Fonction VlookUp sur classeurs fermé

Bonjour,

Je poste ce message car j'ai un problème avec mon code VBA.

En effet, j'utilise la fonction Vlookup qui doit aller chercher dans un fichier fermé.

Cependant, lorsque que j'éxécute la fonction ça ne marche pas et ça met mets erreur d'execution 9. Je ne comprends pas pourquoi.

Voici le code qui ne marche pas.

For l = 9 To 23

If Cells(l, 2).Text Like "Fil" Or Cells(l, 2).Text Like "Drill 20" Then

If Application.Workbookfunction.VLookup(Rech.Cells(4, 2).Value, Workbooks("C:\Users\Julien\Desktop\Stage\Suivi_Mc_FIL.xls").Sheets("2015").Range("A6:J500"), 1, False) = False Then

Rech.Cells(l, 3).Interior.Color = 3

Else

Rech.Cells(l, 3).Interior.Color = 10

End If

End If

Next l

Merci d'avance pour votre aide.

10suivi-papier.xlsm (43.72 Ko)

Bonsoir,

Regarde l'aide VBA sur 'WorksheetFunction.Vlookup'.

Puis essaie un truc du genre :

Dim Resultat As Variant
    Resultat = Application.VLookup(Rech.Cells(4, 2).Value, _
        Workbooks("C:\Users\Julien\Desktop\Stage\Suivi_Mc_FIL.xls").Sheets("2015").Range("A6:J500"), 1, False)
    If IsError(Resultat) Then
        Rech.Cells(l, 3).Interior.Color = 3
    Else
        Rech.Cells(l, 3).Interior.Color = 10
    End If

Bonjour,

Merci Jean Eric de ta réponse

J'ai essayer avec le code que tu m'as donné mais ça ne marche toujours pas.

Ca me mets toujours erreur d'execution de type 9.

Private Sub CommandButton1_Click()

Dim Bd As Worksheet
Dim Rech As Worksheet
Dim NbLig As Long
Dim NbCol As Long
Dim Derlign As Integer
Set Bd = ThisWorkbook.Sheets("Gamme")
Set Rech = ThisWorkbook.Sheets("Suivi")
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim m As Integer
Dim l As Integer
Dim Resultat As Variant

j = 1
With Bd
NbLig = .Cells(.Rows.Count, 1).End(xlUp).Row
NbCol = .Cells(1, .Columns.Count).End(xlToRight).Column
End With

For i = 2 To NbLig
If Suivi_gamme.ComboBox1.Value = Bd.Cells(i, 1).Value Then
    If Suivi_gamme.ComboBox2.Value = Bd.Cells(i, 2).Value Then
        If Suivi_gamme.ComboBox3.Value = Bd.Cells(i, 3).Value Then
        For k = 4 To NbCol
            If Bd.Cells(i, k).Text Like "Fil" Or Bd.Cells(i, k).Text Like "V22" Or Bd.Cells(i, k).Text Like "Drill 20" Or Bd.Cells(i, k).Text Like "Sodick" Then
                If Bd.Cells(i, k + 1).Value = Bd.Cells(i, k).Value Then

                Else
                Rech.Cells(j + 8, 1).Value = Bd.Cells(1, k).Value
                Bd.Cells(i, k).Copy
                Rech.Cells(j + 8, 2).PasteSpecial xlPasteValuesAndNumberFormats
                j = j + 1
                End If
            End If
        Next k
        End If
     End If
End If
Next i

For l = 9 To 23
Rech.Range("C" & l).Interior.ColorIndex = xlColorIndexNone
Next l

For l = 9 To 23
If Rech.Cells(l, 2).Text Like "Fil" Or Rech.Cells(l, 2).Text Like "Drill 20" Then
   Resultat = Application.VLookup(Rech.Cells(4, 2).Value, Workbooks("C:\Users\mto\Desktop\Suivi_Mc_FIL.xlsx").Sheets("2015").Range("C6:J500"), 1, False)
 If IsError(Resultat) Then
    Rech.Range("C" & l).Interior.ColorIndex = 10
    Else
    Rech.Range("C" & l).Interior.ColorIndex = 3
    End If
End If
Next l

Unload Me
End Sub

Je n'arrive pas à voir pourquoi ça ne marche pas.

Quand je fait débogage, l'erreur se trouve se la ligne:

Resultat = Application.VLookup(Rech.Cells(4, 2).Value, Workbooks("C:\Users\mto\Desktop\Suivi_Mc_FIL.xls").Sheets("2015").Range("C6:J500"), 1, False)

Je vous joint les deux fichiers.

(Ce n'est qu'un exemple car il va me falloir lire dans 3 fichiers en tout mais si dans un ça marche, ça devrait marcher pour les 3 après)

Merci d'avance pour votre aide

13pour-test.xlsm (43.04 Ko)
14suivi-mc-fil.xlsx (13.08 Ko)

La solution pour gérer l'erreur m'a été donnée.

Cependant, il y a encore un problème.

En effet, quand j'effectue mon suivi en indiquant le numéro de dossier, la référence et le nom de la pièce, ça ne me met pas la bonne couleur alors que le numéro de dossier est rentré dans le fichier dans lequel je viens lire.

Je ne vois pas comment faire, c'est peut-être une histoire de format des cellules mais je ne suis pas sur...

Pouvez-vous m'aidez ?

Je mets en pièce jointe mes fichiers.

Merci d'avance

9suivi-mc-fil.xlsx (13.06 Ko)
16pour-test.xlsm (43.32 Ko)

Rebonjour,

J'ai un problème avec mes fichiers.

Je n'arrive pas à lire quand le fichier est fermé, j'arrive seulement quand le fichier dans lequel je vais lire est ouvert.

Comment puis-je faire ?

Merci d'avance

14pour-test.xlsm (43.80 Ko)
10suivi-mc-fil.xlsx (13.13 Ko)
Rechercher des sujets similaires à "probleme fonction vlookup classeurs ferme"