Bonjour Jean-Phi, le Forum
chez moi, ça plante pas, excel 2002
cependant, à la lecture de ton code, je peux te dire que ta gestion d'erreurs n'a rien à faire à l'intérieur de la boucle ou elle est exécutée à chaque valeur de i et de else même sans erreur ce qui doit provoquer ton problème. Essaie plutôt ce code modifié.
A+
Sub essai()
Dim i%, v%, k%
Dim Sht1 As Worksheet
Dim Sht2 As Worksheet
Set Sht1 = Sheets("Feuil1")
Set Sht2 = Sheets("Feuil2")
On Error GoTo Errorhandler
For i = 1 To 10
v = 1
Sht1.Select
If Sht2.Cells(1, 1).Value = "" Then
v = 0
If Sht2.Cells(i, 3) = "" Then
MsgBox "rien à faire..."
Else
'Set k = Nothing
k = 0
MsgBox "i=" & i
k = Sht1.Cells.Find(Sht2.Cells(i, 3).Value, , xlValues).Row '<- Au deuxième passage ICI le code plante....
MsgBox k
Sht1.Cells(k, 4).Value = Sht2.Cells(i, 3).Value
End If
End If
Next i
On Error GoTo 0
Exit Sub
Errorhandler:
If Err.Number = 91 Or Err.Number = 0 Then
MsgBox "ok..."
Else
'si c'est une autre erreur...
MsgBox "Une erreur non gérée s'est produite " & Err.Number & " " & Err.Source & " " & Err.Description
End If
Resume Next
End Sub