Option Explicit
Sub Search()
Dim Fichier_Texte As String, Texte_a_rechercher As String
Dim firstAddress As String, Rep As String, Adresse_encours As String
Dim Valeur As String
Dim Feuille As Worksheet
Dim C As Range
Fichier_Texte = "D:\resultat_recherche.txt"
Open Fichier_Texte For Output As #1
Texte_a_rechercher = InputBox("Texte à rechercher", "Recherche")
If Texte_a_rechercher = "" Then Exit Sub
For Each Feuille In Worksheets
Feuille.Select
Range("A1").Select
With Feuille.Cells
Set C = .Find(Texte_a_rechercher, LookIn:=xlValues)
If Not C Is Nothing Then
firstAddress = C.Address
Do
C.Select
Rep = MsgBox("Recherche du suivant", vbOKCancel, "Recherche")
If Rep = vbCancel Then Exit Sub
Set C = .FindNext(C)
If C Is Nothing Then
Adresse_encours = 0
Else
Adresse_encours = C.Address
Valeur = Adresse_encours + Feuille.Name
Print #1, Valeur
End If
Loop While Not (C Is Nothing) And (Adresse_encours <> firstAddress)
End If
End With
Next Feuille
Close #1
MsgBox "RECHERCHE TERMINEE"
Sheets("Feuil1").Select
Range("A1").Select
End Sub