recherche surtoutes bles feilles sauf la première

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

michel.dupont

XLDnaute Occasionnel
bonjour
voici un code de recherche qui fonctionne correctement mais je voudrais que la recherche ne se fasse pas sur le premier onglet qui s'appelle "start";Pouvez-vous m'aider?
merci à tous
Michel

Sub Recherche()
Dim MaRecherche
Dim Ws As Worksheet
Dim c As Range
Dim Message As String, firstAddress As String
MaRecherche = Worksheets("start").Range("g31").Value
Message = "La valeur " & MaRecherche & " a été trouvée :" & Chr(10)
For Each Ws In Worksheets

With Ws
Set c = .Columns("A:Z").Find(What:=MaRecherche, LookIn:=xlValues, LookAt:=xlPart)
If Not c Is Nothing Then
firstAddress = c.Address
Do
Message = Message & "- dans la feuille " & Ws.Name & ", cellule " & c.Address & Chr(10)
Set c = .Columns("A:Z").FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With

Next Ws


MsgBox Message
End Sub
 
Bonjour Michel,
A tester ceci,
Bruno

Edit: Désolé j'ai mal compris la demande le code n'est pas bon
Code:
Sub Recherche()
Dim nom
With Sheets("start")
.select
nom=.[G31]
Set c = .columns("A:Z").Find(nom, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Activate
rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection")
If rep = vbNo Then Exit Sub
Set c = .columns("A:Z").FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
MsgBox "Recherche terminée!"
End Sub
 
Dernière édition:
Voici le corrigé tout simplement
j'ai ajouté le If Ws….et End if
Bruno
Code:
Sub Recherche()
Dim MaRecherche
Dim Ws As Worksheet
Dim c As Range
Dim Message As String, firstAddress As String
MaRecherche = Worksheets("start").Range("g31").Value
Message = "La valeur " & MaRecherche & " a été trouvée :" & Chr(10)
For Each Ws In Worksheets
if Ws.name<>"start" Then
With Ws
Set c = .Columns("A:Z").Find(What:=MaRecherche, LookIn:=xlValues, LookAt:=xlPart)
If Not c Is Nothing Then
firstAddress = c.Address
Do
Message = Message & "- dans la feuille " & Ws.Name & ", cellule " & c.Address & Chr(10)
Set c = .Columns("A:Z").FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End If
Next Ws
MsgBox Message
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
237
Réponses
4
Affichages
461
Retour