Rechercher des cellules dans un classeur entier

Signaler
Messages postés
4
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
30 juin 2008
-
Messages postés
4
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
30 juin 2008
-
Bonjour,
je voudrais créer un programme qui lance une recherche dans le classeur et qui écrive sur ma feuille de recherche les résultats trouvés. La recherche se lance lorsqu'on clique sur le bouton valider de l'userform.
J'essaye désespérement de le coder mais cela ne fonctionne pas, voici le début de mon codage, pourriez vous me dire où cela coince :
Private Sub bouton_valider_nom_Click()


Dim cell As Range
Dim feuille As Worksheet
Dim ligne As String
Dim nom_fournisseur As String
Dim nom_feuille(20) As String
Dim i As Integer
ligne = 9
i = 1
nom_fournisseur = remplissage_nom_fournisseur.value

Worksbooks("memoversionexcel 3").Activate


For Each feuille In Worksheets
nom_feuille(i) = ActiveSheet.Name
 For Each cell In Range("B1:J100")
        If cell = nom_fournisseur Then
            Worksheets("Recherche").Activate
            Range("H" & ligne).Value = nom_fournisseur
            Range("I" & ligne).Value = cell.Offset(0, 1).Value
            Range("J" & ligne).Value = nom_feuille(i)
            ligne = ligne + 1
            i = i + 1
        Else
        Worksheets("Recherche").Activate
        Range("H9") = "Aucun résultat. Vérifiez le nom du fournisseur."
    End If
    Next
Next
Unload Me
End Sub

Merci beaucoup d'avance
Emilie

2 réponses

Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
Salut,



vois les modifs en bleu :

Dim cell As Range
Dim feuille As Worksheet
Dim ligne As Integer
Dim nom_fournisseur As String
Dim nom_feuille(20) As String
Dim i As Integer
ligne = 9
i = 1
nom_fournisseur = remplissage_nom_fournisseur.value

Worksbooks("memoversionexcel 3").Activate

For Each feuille In ThisWorkBook
 For Each cell In Range("B1:J100")
        If cell.Value = nom_fournisseur Then
            With Worksheets("Recherche")
                .Range("H" & ligne).Value = nom_fournisseur
                .Range("I" & ligne).Value = cell.Offset(0, 1).Value <-- comprend pas ?
                .Range("J" & ligne).Value = feuille.Name
             End With
            ligne = ligne + 1
            i = i + 1
        Else
        Worksheets("Recherche").Activate
        Range("H9").Value = "Aucun résultat. Vérifiez le nom du fournisseur."
    End If
    Next cell
Next feuille
Unload Me
End Sub

A+
Messages postés
4
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
30 juin 2008

merci beaucoup ça marche parfaitement