Bonjour,
il ne faut mettre le traitement d'erreur que juste avant la (ou les) ligne susceptible de générer l'erreur.
Le mettre tout au début pour cacher la poussière sous le tapis n'est jamais une bonne solution
il faut systématiquement rétablir le gestionnaire d'erreur avec On Error Goto 0 dès que ce passage est fait (dans le fil du code et dans le traitement d'erreur) pour être alerté des erreurs suivantes.
Tant que tu n'as pas réactivé le gestionnaire d'erreur tu restes dedans. Il n'y en qu'un seul possible, il ne peut superviser les suivantes.
Pourquoi faire un On Error Goto erreur et dedans mettre un Goto 100 ?
Autant mettre un On Error Goto suite, étiquette que tu mets juste avant le Next puisque c'est là que tu veux aller.
A tester :
Sub trouver_identique()
zz = "zz.xlsm"
yy = "yy.xlsx"
Windows(zz).Activate
For i = 1 To 6
On Error GoTo suite
Windows(zz).Activate
On Error GoTo 0
valeur = Range("a" & i).Value
On Error GoTo suite
Workbooks(yy).Activate
On Error GoTo 0
Range("a:a").Select
Debug.Print valeur & i
Cells.Find(valeur).Activate
place = ActiveCell.Address
Windows(zz).Activate
Range("a" & i).Offset(0, 1).Value = place
Workbooks(yy).Activate
ActiveCell.Interior.Color = RGB(253, 233, 217)
suite:
On Error GoTo 0
Next i
End Sub
Je ne me suis pas soucié du reste du code sur lequel il y aurait des choses à dire
eric