Erreur 2042

Calvus

XLDnaute Barbatruc
Bonjour le forum,

Je sèche depuis plusieurs heures sur un problème que je n'arrive pas à résoudre.
Un œil neuf me serait bien utile.

En fonction des fichiers testés; les occurrences varient de 2 à 5 résultats positifs, malgré la même macro... Bizarre...
VB:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("E4:E" & Cells(Rows.Count, 5).End(xlUp).Row), Target) Is Nothing And Target.Count = 1 Then
Target.Offset(, 1).Value = Application.Index(Feuil3.Range("A2:B" & Cells(Rows.Count, 2).End(xlUp).Row), Application.Match(Target.Value, Feuil3.Range("A2:A" & Cells(Rows.Count, 2).End(xlUp).Row), 0), 2)
End If
End Sub

Le code se trouve évidemment dans la feuille 1.

Merci de votre aide.
 

Pièces jointes

  • Erreur 2042.xlsm
    16.1 KB · Affichages: 7

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @Calvus:) ,

Erreur que je commets aussi par inattention.
Dans ta formule, tu utilises Cells(...)
Or tu ne préfixes pas cette objet range. Il fait donc référence à la feuille courante et non pas à la feuille Feuil3.
Il faut écrire : Feuil3.Cells(...) (avec le codename) ou bien Sheets("FEUIL3").Cells(...) (avec le nom de l'onglet)
 
Dernière édition:

Calvus

XLDnaute Barbatruc
Bonjour @mapomme,

Comment vas tu ? Cela faisait longtemps ! :)

Merci !
Suis-je bête !! C'est une erreur que j'ai déjà fait des dizaines de fois, et voilà que je tombe dans le piège à nouveau !
Et pourtant je l'ai bien signalé dans mon Range..
C'est ça de n'avoir dormi que 2 heures cette nuit. On n'a plus 20 ans ! ;)

Merci beaucoup et à bientôt.