VBA erreur execution 1004 impossible de lire la propriété vlookup

bfremy

XLDnaute Nouveau
Bonjour à tous,

je cherche à faire une rechercheV sur plusieurs lignes sur 2 fichiers Excels differents, par contre quand il ne trouve pas une valeur ca plante et affiche erreur execution 1004 impossible de lire la propriété vlookup de la classe worksheetfunction
comment faire pour qu'il continue ou qu'il affiche N/A ou autre chose

je vous remerci d'avance pour votre support
cordialement

mon code:
Dim i As Integer
i = 4
For i = 4 To 227

With Workbooks("import fichier export.xlsm").Worksheets("export")
Cells(i, 7) = Application.WorksheetFunction.VLookup(Cells(i, 2), Workbooks("DONNEES.xlsx").Sheets(1).Range("A15:R999"), 18, False)
End With

Next
 

youky(BJ)

XLDnaute Barbatruc
Re : VBA erreur execution 1004 impossible de lire la propriété vlookup

Salut bien,
Faut pas mettre ton with et End with dans le For et le i=4 ne sert à rien.
Avec un with..machin il faut mettre un point .Cells(....cela veut dire due l'on s'adresse au with
Code non testé, je viens de rajouter on Error pour éviter si rien trouvé.

Bruno
Code:
Dim i As Integer
on error resume next
With Workbooks("import fichier export.xlsm").Worksheets("export")
For i = 4 To 227
.Cells(i, 7) = Application.WorksheetFunction.VLookup(Cells(i, 2), Workbooks("DONNEES.xlsx").Sheets(1).Range("A15:R99 9"), 18, False)
Next
End With
 

bfremy

XLDnaute Nouveau
Re : VBA erreur execution 1004 impossible de lire la propriété vlookup

merci bruno pour les infos
par contre avec ton code il ne se passe plus rien, si j'enleve 'On Error Resume Next
il m'indique encore la même erreur 1004 elle apparait immediatement

avec mon code je suis arrivé à remplir avec rechercheV 3 celulles et ensuite erreur 1004 car il ne trouve pas ce qu'il doit trouver
je souhaiterai dans ce cas la qu'il mette par exemple 0

qu'est ce qui cloche? svp
benoit
 

job75

XLDnaute Barbatruc
Re : VBA erreur execution 1004 impossible de lire la propriété vlookup

Bonjour,

Il manquait encore un point et Bruno avait laissé votre espace superflu...

Avec une variable de type Variant :

Code:
Dim i As Integer, v As Variant
With Workbooks("import fichier export.xlsm").Worksheets("export")
For i = 4 To 227
  v = Application.VLookup(.Cells(i, 2), Workbooks("DONNEES.xlsx").Sheets(1).Range("A15:R999"), 18, 0)
  .Cells(i, 7) = IIf(IsError(v), 0, v)
Next
End With
A+
 

Dongmo

XLDnaute Nouveau
bonsoir besoin d'aide
je cherche à faire une recherche sur plusieurs lignes sur 2 fichiers Excels differents, par contre quand il ne trouve pas une valeur ca plante et affiche erreur execution 1004 impossible de lire la propriété vlookup de la classe worksheetfunction
comment faire pour qu'il continue

je vous remercie d'avance pour votre support
cordialement

Private Sub CommandButton1_Click()
Dim part_name As String
Dim part_prix As Currency

part_name = WorksheetFunction.VLookup(Me.Cbx_article, Sheets(2).Range("b:i"), 2, 0)

With Me.List_order
.AddItem
.List(memoire, 0) = Me.Cbx_article
.List(memoire, 1) = part_name
End With
memoire = memoire + 1
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 101
Membres
103 117
dernier inscrit
augustin.morille