Rechercher des cellules dans un classeur entier

izarra2408 Messages postés 4 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 30 juin 2008 - 26 juin 2008 à 10:29
izarra2408 Messages postés 4 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 30 juin 2008 - 30 juin 2008 à 11:03
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

bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
26 juin 2008 à 15:44
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+
0
izarra2408 Messages postés 4 Date d'inscription jeudi 26 juin 2008 Statut Membre Dernière intervention 30 juin 2008
30 juin 2008 à 11:03
merci beaucoup ça marche parfaitement
0
Rejoignez-nous