Kim tucker
XLDnaute Nouveau
Bonjour a vous.
Grâce a ce site, j'ai pu trouver la solution à mon problème, reste juste à adapter cette solution a mon utilisation.
Donc, une âme charitable a crée cette macro qui fait une recherche dans une feuille suivant un critère "X", et donne les résultats de cette recherche dans une nouvelle feuille excel.
Ce dont j'aurais besoin, c'est que cette recherche ne s'effectue plus seulement sur une feuille, mais sur un classeur entier. Car j'ai une cinquantaine de feuilles, correspondant aux semaines dans l'année.
Merci d'avance.
Voici la macro:
Option Explicit
Sub RechercheMots()
Dim i As Byte, j As Long, Lig As Integer
Dim Mot As String, firstAddress As String
Dim Plage As Range, c As Range
Application.ScreenUpdating = False
'Efface le contenu des cellules si A5 n'est pas vide
If Sheets("RECAPITULATIF").Range("A5") <> "" Then
'efface les bordures du tableau
Range(Sheets("RECAPITULATIF").Range("A5"), Sheets("RECAPITULATIF").Range("A65536").End(xlToRight)).ClearFormats
'efface le contenu des cellules
Range(Sheets("RECAPITULATIF").Range("A5"), Sheets("RECAPITULATIF").Range("A65536").End(xlToRight)).ClearContents
End If
'selectionne la ligne du début du récapitulatif (à partir quelle ligne on va pouvoir insérer les données)
Lig = Sheets("RECAPITULATIF").Range("A65536").End(xlUp).Row + 1
'Selectionne la zone de recherche du mot
Set Plage = Range(Sheets("SUIVI").Range("A5"), Sheets("SUIVI").Range("A65536").End(xlUp))
Mot = InputBox("Mot à rechercher ?")
If Mot = "" Then Exit Sub
For Each c In Plage
If InStr(1, c, Mot) <> 0 Then
c.EntireRow.Range("A1:L1").Copy Sheets("recapitulatif").Cells(Lig, 1)
Lig = Lig + 1
End If
Next c
Sheets("RECAPITULATIF").Activate
Range("A4").Activate
Application.ScreenUpdating = True
End Sub
le fichier original est ici, si ca peut vous aider. C'est le fichier joint d'Hervé "SUIVINC":
https://www.excel-downloads.com/threads/fonction-find.37971/
Grâce a ce site, j'ai pu trouver la solution à mon problème, reste juste à adapter cette solution a mon utilisation.
Donc, une âme charitable a crée cette macro qui fait une recherche dans une feuille suivant un critère "X", et donne les résultats de cette recherche dans une nouvelle feuille excel.
Ce dont j'aurais besoin, c'est que cette recherche ne s'effectue plus seulement sur une feuille, mais sur un classeur entier. Car j'ai une cinquantaine de feuilles, correspondant aux semaines dans l'année.
Merci d'avance.
Voici la macro:
Option Explicit
Sub RechercheMots()
Dim i As Byte, j As Long, Lig As Integer
Dim Mot As String, firstAddress As String
Dim Plage As Range, c As Range
Application.ScreenUpdating = False
'Efface le contenu des cellules si A5 n'est pas vide
If Sheets("RECAPITULATIF").Range("A5") <> "" Then
'efface les bordures du tableau
Range(Sheets("RECAPITULATIF").Range("A5"), Sheets("RECAPITULATIF").Range("A65536").End(xlToRight)).ClearFormats
'efface le contenu des cellules
Range(Sheets("RECAPITULATIF").Range("A5"), Sheets("RECAPITULATIF").Range("A65536").End(xlToRight)).ClearContents
End If
'selectionne la ligne du début du récapitulatif (à partir quelle ligne on va pouvoir insérer les données)
Lig = Sheets("RECAPITULATIF").Range("A65536").End(xlUp).Row + 1
'Selectionne la zone de recherche du mot
Set Plage = Range(Sheets("SUIVI").Range("A5"), Sheets("SUIVI").Range("A65536").End(xlUp))
Mot = InputBox("Mot à rechercher ?")
If Mot = "" Then Exit Sub
For Each c In Plage
If InStr(1, c, Mot) <> 0 Then
c.EntireRow.Range("A1:L1").Copy Sheets("recapitulatif").Cells(Lig, 1)
Lig = Lig + 1
End If
Next c
Sheets("RECAPITULATIF").Activate
Range("A4").Activate
Application.ScreenUpdating = True
End Sub
le fichier original est ici, si ca peut vous aider. C'est le fichier joint d'Hervé "SUIVINC":
https://www.excel-downloads.com/threads/fonction-find.37971/