SI & RECHERCHEV en code VBA........... Erreur d'exécution 1004....

CyberNeo99

XLDnaute Occasionnel
Bonjour à tous,


J'ai trouvé une solution au problème que j'avais mais lorsque je l'applique à mon formulaire j'ai une erreur d'exécution 1004 qui dit "Impossible de lire la propriété VLookup de la classe WorkSheetFunction". Je joint le fichier pour lequel tous fonctionne bien, il fait exactement ce que je veux. Voici le code pour lequel j'ai mon erreur

If Application.Intersect(Target, Range("G35:G74")) Is Nothing Then Exit Sub 'limite l'action a la plage G35:G74
If Selection.Cells.Count > 1 Then Exit Sub 'limite l'action a une seule cellule
If Target.Value = "" Then 'condition : si la cellule est effacée
Target.Offset(0, 14).Value = "" 'efface la cellule de la colonne D
Else 'sinon

For I = 35 To 74

If Sheets("Détail projet").Cells(I, 18) < Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 9, False) - (0.1 * (Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 9, False))) Then

Sheets("Détail projet").Cells(I, 21) = Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 19, False)

Else

If Sheets("Détail projet").Cells(I, 18) > Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 9, False) + (0.1 * (Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 9, False))) Then

Sheets("Détail projet").Cells(I, 21) = Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 20, False)

Else

Sheets("Détail projet").Cells(I, 21) = Application.WorksheetFunction.VLookup(Sheets("Détail projet").Cells(I, 7), Sheets("Prévisions listées").Range("A2:V101"), 18, False)

End If

End If

Next

End If


End Sub


J'ai essayé d'enlever la partie WorksheetFunction pour ne laisser que le VLookup et il me sort une autre erreur de Type 13 incompatibilité. L'erreur semble être dans le code en rouge mais en fait le reste est similaire donc si il y a une solution pour régler le code en rouge il suffira d'appliquer cette solution au reste.

J'ai beau me creusé la tête regardé sur Internet je ne toruve rien. Je ne sais pas si le fait de changer la partie de code Cells(I, 18) par exemple par un code du même type pourrait changer quelque chsoe. Il n'arrive pas à lire la donnée dans le tableau je crois.... Il y a peut être une information qui peut vous aidez le tableau où il va lire la données, il est protégé. J'ai pourtant mis le code VBA pour enlever la protection et la remettre et j'ai toujours une erreur.

Je suis désespéré. Si qqu peut me donner une piste ou encore mieux trouver une solution je serais aux anges....


Grand Merci à l'avance


Neo
 

Pièces jointes

  • Insertion de formule dans une cellule si autre cellule non vide par code VBA v4.xls
    32 KB · Affichages: 77
  • Insertion de formule dans une cellule si autre cellule non vide par code VBA v4.xls
    32 KB · Affichages: 93
  • Insertion de formule dans une cellule si autre cellule non vide par code VBA v4.xls
    32 KB · Affichages: 93

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 884
Membres
103 018
dernier inscrit
mohcen23