Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

faide pour ameliorer cette macro de recherche

2 réponses
Avatar
e.platet
bonsoir
voici la macro elle est deja passé entre certaines mains pour amélioration
et donc ma dernier question lorsque je fais une recherche tout ce passe bien
mais quand une donnée se trouve sur plusieurs feuilles la macro ne me donne
qu'une feuille exemple: je recherche le mot piste si la macro trouve ce mot
dans la feuille 1 elle ne mentionne pas aussi la feuille 3 alors que le mot
s'y trouve merci pour votre aide.

manu

Sub VaChercher()
'
Dim Quoi As String
Dim oSheet As Worksheet
Quoi = InputBox("Qu'est qu'c'est'y qu'tu veux chercher ?", "MPFE")


For Each oSheet In Worksheets
oSheet.Select
If Not Cells.Find(What:=Quoi, After:=Range("A1"), LookIn:=xlFormulas) Is
Nothing Then

xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=False) _
Is Nothing Then
MsgBox oSheet.Name & " - " & Cells.Find(What:=Quoi, After:=ActiveCell,
LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=False) _
.Address
Exit For
End If
Next

End Sub

2 réponses

Avatar
Gaenonius
C'est un peu normal puisque tu arrêtes la recherche (Exit for) dès qu'une
occurrence de Quoi est trouvée.
Essaye avec cette modification (attention aux coupures de lignes en collant) :

Sub VaChercher()
Dim Quoi As String
Dim oSheet As Worksheet
Quoi = InputBox("Qu'est qu'c'est'y qu'tu veux chercher ?", "MPFE")
For Each oSheet In Worksheets
oSheet.Select
If Not Cells.Find(What:=Quoi, After:=Range("A1"), _
LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse) Is Nothing Then
MsgBox oSheet.Name & " - " & Cells.Find(What:=Quoi, After:¬tiveCell, _
LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse).Address
' Exit For
End If
Next
End Sub

--
Gaenonius

bonsoir
voici la macro elle est deja passé entre certaines mains pour amélioration
et donc ma dernier question lorsque je fais une recherche tout ce passe bien
mais quand une donnée se trouve sur plusieurs feuilles la macro ne me donne
qu'une feuille exemple: je recherche le mot piste si la macro trouve ce mot
dans la feuille 1 elle ne mentionne pas aussi la feuille 3 alors que le mot
s'y trouve merci pour votre aide.

manu

Sub VaChercher()
'
Dim Quoi As String
Dim oSheet As Worksheet
Quoi = InputBox("Qu'est qu'c'est'y qu'tu veux chercher ?", "MPFE")


For Each oSheet In Worksheets
oSheet.Select
If Not Cells.Find(What:=Quoi, After:=Range("A1"), LookIn:=xlFormulas) Is
Nothing Then

xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:úlse) _
Is Nothing Then
MsgBox oSheet.Name & " - " & Cells.Find(What:=Quoi, After:¬tiveCell,
LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:úlse) _
..Address
Exit For
End If
Next

End Sub




Avatar
e.platet
ok merci Gaenonius je vais essayer cette modif et bonne fête de fin d'année.
"Gaenonius" a écrit dans le message de news:
%
C'est un peu normal puisque tu arrêtes la recherche (Exit for) dès qu'une
occurrence de Quoi est trouvée.
Essaye avec cette modification (attention aux coupures de lignes en
collant) :

Sub VaChercher()
Dim Quoi As String
Dim oSheet As Worksheet
Quoi = InputBox("Qu'est qu'c'est'y qu'tu veux chercher ?", "MPFE")
For Each oSheet In Worksheets
oSheet.Select
If Not Cells.Find(What:=Quoi, After:=Range("A1"), _
LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse) Is Nothing Then
MsgBox oSheet.Name & " - " & Cells.Find(What:=Quoi,
After:¬tiveCell, _
LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse).Address
' Exit For
End If
Next
End Sub

--
Gaenonius

bonsoir
voici la macro elle est deja passé entre certaines mains pour
amélioration et donc ma dernier question lorsque je fais une recherche
tout ce passe bien mais quand une donnée se trouve sur plusieurs feuilles
la macro ne me donne qu'une feuille exemple: je recherche le mot piste si
la macro trouve ce mot dans la feuille 1 elle ne mentionne pas aussi la
feuille 3 alors que le mot s'y trouve merci pour votre aide.

manu

Sub VaChercher()
'
Dim Quoi As String
Dim oSheet As Worksheet
Quoi = InputBox("Qu'est qu'c'est'y qu'tu veux chercher ?", "MPFE")


For Each oSheet In Worksheets
oSheet.Select
If Not Cells.Find(What:=Quoi, After:=Range("A1"), LookIn:=xlFormulas) Is
Nothing Then

xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:úlse) _
Is Nothing Then
MsgBox oSheet.Name & " - " & Cells.Find(What:=Quoi, After:¬tiveCell,
LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:úlse) _
..Address
Exit For
End If
Next

End Sub