Syntaxe rechercheV dans un autre classeur, erreur 9

Bonjour à tous,

Voilà, je suis en stage, je connais un peu la logique du codage (j'ai fait un peu de C) mais la syntaxe vba c'est pas trop ça.

Je dois faire une macro qui doit me permettre d'associer une date à un code.

Jusque là, rien de très compliqué seulement voilà :

J'ai des codes articles en colonne E, auxquels sont, parfois, associés des nouveaux codes, en colonne F.

Je dispose d'un autre classeur comportant 2 feuilles ("on going" et "Already launched") qui contiennent chacune des correspondances entre ces nouveaux codes et des dates. En gros, si un code ne se trouve pas dans la première feuille (avec sa date qui lui est associé), c'est qu'il est dans la deuxième.

J'ai cherché des bouts de codes que j'ai adaptés à mon problème, voilà ce que ça donne

Sub DateReleaseSupplier()
Range("E2").Select  ' le 1er code article est en E2

Do While Not (IsEmpty(ActiveCell)) ' tant qu'il y a un code article

    If Not (IsEmpty(ActiveCell.Offset(0, 1))) Then ' si la case de la colonne F est non vide (c-a-d s'il y a chgt de code)
                     ' On met en colonne O le commentaire correspondant au code 2 dans le classeur atwork, feuille on going
                     With Workbooks("Copie de Test.xls").Sheets("Feuil1")
                     .ActiveCell.Offset(0, 10).Value = WorksheetFunction.VLookup(.ActiveCell.Offset(0, 1).Value, Workbooks("ARTWORK TRACKER SITE NPD ET EPD.xls").Sheets("on going").Range("L3:AD583"), 19, False)
                     End With
                     If (IsEmpty(ActiveCell.Offset(0, 10))) Then ' Si on ne trouve pas de code correspondant dans feuille "on going" du classeur artwork
                      ' On regarde ds feuille Already launched de ce mm classeur
                      With Workbooks("Copie de Test.xls").Sheets("Feuil1")
                         .ActiveCell.Offset(0, 10).Value = WorksheetFunction.VLookup(.ActiveCell.Offset(0, 1).Value, Workbooks("ARTWORK TRACKER SITE NPD ET EPD.xls").Sheets("Already launched").Range("L3:AD973"), 19, False)
                      End With
                         ActiveCell.Offset(1, 0).Select ' on passe à la ligne suivante
                     Else
                         ActiveCell.Offset(1, 0).Select ' on passe à la ligne suivante
                    End If
    Else
                   ActiveCell.Offset(1, 0).Select ' on passe à la ligne suivante
    End If
Loop  ' et on reboucle

End Sub

Quand j’exécute la macro, j'obtiens une erreur "438" : la propriété ou méthode n'est pas gérée par cet objet

le problème se situe au niveau de with worksheets, je suppose qu'il s'agit d'un problème de syntaxe, mais comme je vous l'ai dit, j'y connais pas grand chose

Enfin voilà, si à tout hasard vous voyez rapidement une énorme erreur, n'hésitez pas à me corriger

Et merci pour le temps que vous avez consacré ne serait-ce qu'à lire ce post.

Bien cordialement,

Louis

EDIT : j'ai rajouté le fichier sur lequel je souhaite faire ma macro, en revanche je n'ai pas mis le catalogue (ARTWORK quelque chose), mais je suis sûr des paramètres de la recherchev que j'effectue dessus

34copie-de-test.zip (27.86 Ko)

Bonjour

Il serait plus facile d'étudier ton problème si tu joignais tes fichiers.

Bye !

Bonjour,

Je relance la communauté sur ce problème (j'ai joint les fichiers qui vont bien)

Si quelqu'un a une idée

Bonjour

louisP a écrit :

j'ai joint les fichiers qui vont bien

Désolé mais je n'en vois qu'un.

Or, ta macro fait appel à 2 fichiers : donc elle plante...

Bye !

Rechercher des sujets similaires à "syntaxe recherchev classeur erreur"