J
Jean-Phi
Guest
Ciao le forum !!
Alors voilà la situation : dans une de mes procédures (sous Ecxcel 2000 sous PC), j'effectue une gestion de l'erreur '91' dans une boucle For qui ne marche pas très bien je l'avoue...
Je m'explique : à la première erreur, tout se passe comme il faut mais à la suivante, j'ai le message d'erreur '91' qui s'affiche.
J'ai cherché dans le forum mais rien qui puisse résoudre mon pb et les causes de l'erreur détaillées dans l'aide d'Excel ne concernent pas mon code a priori.
Alors ma question est la suivante : est-il possible de gérer une erreur à l'intérieur d'une boucle If qui elle-même se situe dans une boucle For ?
Le code simplifié figure en fin de mail.
Je vous remercie d'avance pour les réponses que vous pourrez m'apportez !
Cordialement,
Jean-Phi
PS : le code :
dim v%, k%
dim Sht1 as worksheet
dim Sht2 as woksheet
set Sht1=sheets("Feuil1")
set Sht2=sheets("Feuil2")
sub essai()
For i = 7 To f
v=0
Sht1.select
If Sht2.Cells(1,1).Value <> "" Then
v=1
If v = 0 Then
msgbox "rien à faire..."
Else
Set k = Nothing
k = 0
On Error GoTo Errorhandler
k = Sht1.Cells.Find(Sht2.Cells(i, 3).Value, , xlValues).Row '<- Au deuxième passage ICI le code plante....
End If
Errorhandler:
If Err.Number = 91 Or Err.Number = 0 Then
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
end sub
Alors voilà la situation : dans une de mes procédures (sous Ecxcel 2000 sous PC), j'effectue une gestion de l'erreur '91' dans une boucle For qui ne marche pas très bien je l'avoue...
Je m'explique : à la première erreur, tout se passe comme il faut mais à la suivante, j'ai le message d'erreur '91' qui s'affiche.
J'ai cherché dans le forum mais rien qui puisse résoudre mon pb et les causes de l'erreur détaillées dans l'aide d'Excel ne concernent pas mon code a priori.
Alors ma question est la suivante : est-il possible de gérer une erreur à l'intérieur d'une boucle If qui elle-même se situe dans une boucle For ?
Le code simplifié figure en fin de mail.
Je vous remercie d'avance pour les réponses que vous pourrez m'apportez !
Cordialement,
Jean-Phi
PS : le code :
dim v%, k%
dim Sht1 as worksheet
dim Sht2 as woksheet
set Sht1=sheets("Feuil1")
set Sht2=sheets("Feuil2")
sub essai()
For i = 7 To f
v=0
Sht1.select
If Sht2.Cells(1,1).Value <> "" Then
v=1
If v = 0 Then
msgbox "rien à faire..."
Else
Set k = Nothing
k = 0
On Error GoTo Errorhandler
k = Sht1.Cells.Find(Sht2.Cells(i, 3).Value, , xlValues).Row '<- Au deuxième passage ICI le code plante....
End If
Errorhandler:
If Err.Number = 91 Or Err.Number = 0 Then
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
end sub