Vba excel erreur objet requis
RésoluVOICI MA MACRO
excel me renvie erreur de compilation , objet requis sur la ligne set my range
Priere m'aider
Merci
Sub recherche()
'ALE = Application.WorksheetFunction.VLookup(compte, myRange, 2, False)
Sheets("Feuil2").Select
Dim LastRow As Long
Dim myrange As String
Dim i As Integer
Dim Région As Sheets
LastRow = Feuil2.Range("c" & Rows.Count).End(xlUp).Row
Set myrange = Feuil3.Range("D3:E298")
'la boucle
For i = 2 To LastRow
Cells(i, 3) = Application.WorksheetFunction.VLookup(Cells(i, 3), myrange, 2, False)
Next i
End Sub
1 réponse
L’erreur « objet requis » survient dans une macro Excel lors d’un VLOOKUP avec Set myrange, en raison d’une définition inappropriée de la plage et d’un mauvais ciblage de la feuille. La méthode préconisée consiste à Set myrange = Worksheets(1).[A1:B295], à sélectionner Feuil6 et à calculer LastRow via la colonne B, puis à alimenter la colonne 3 par Application.VLookup. Une version sans commentaire montre le même schéma, avec une plage correctement définie et la suppression du caractère Set lorsque l’objet Range est déjà clair, évitant l’erreur 1004. En complément, l’usage cohérent du codename et du nom réel évite les confusions: préférer Worksheets(1) pour la plage et Feuil6 pour la feuille active afin de limiter les erreurs.
-
ContributeurBonjour,
avec Set myrange = Feuil3.Range("D3:E298")
tu utilises le codename de la feuille et non son nom.
C'est sheets("nom de ta feuille").xxx pour utiliser le nom
Regarde ton projet tu as tes feuilles listée sur ce modèle :
codename (nom de la feuille)
Feuil3 n'existe peut-être pas mais tu vas peut-être trouver :
Feuil5 (Feuil3)
le feuille nommée "Feuil3" a pour codename Feuil5
-
-
ContributeurBonjour,
où trouver le codename
Ben je t'ai expliqué non ?
Regarde ton projet tu as tes feuilles listée sur ce modèle :
codename (nom de la feuille)
Avec Set myrange = Feuil3.Range("D3:E298") vu que Range("D3:E298") ne peut qu'exister, l'erreur ne peut être que sur Feuil3 qui n'existe pas pour vba -
-
-
-