Macro recherche sur excel 2007

Résolu
Armel -  
 Armel -
Bonjour,

J'ai écris une macro pour rechercher un mot dans une base de données. Mes cette macro recherche sur tout le classeur et sur chaque feuille. J'aimerais, si possible que cette macro recherche sur une feuille bien définie et seulement sur les 3 premières colonnes.
Je vous met mon code

Sub Recherche()
Dim F As Worksheet
Dim Cel As Range
Dim Cel_Ref As Range

Set Cel_Ref = Range("R1")
For Each F In Sheets
For Each Cel In F.UsedRange
If (Cel.Address <> Cel_Ref.Address Or F.Name <> ActiveSheet.Name) And _
Cel Like Cel_Ref Then
F.Activate
Cel.Activate
Exit Sub
End If
Next Cel
Next F
MsgBox "N° du bac avec lettre en majuscule, espace et chiffre ! ! ! "
End Sub

Je vous remercie d'avance

Cordialement
Un débutant VBA bloqué ^^

1 réponse

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour,

    Si j'ai bien compris ce que tu veux obtenir je te proposerai plutôt d'utiliser directement une recherche (find) :

    Public Sub recherche()
    Dim Cel As Variant, F As Worksheet
        Set F = Sheets("base") ' mettre le nom de la feuille de recherche
        With F.Range("A:C")
            Set Cel = .Cells.Find(ActiveSheet.Range("R1").Value, .Cells(1, 1), xlValues, xlPart)
            If Cel Is Nothing Then
                MsgBox "recherche infructueuse"
            Else
                F.Activate
                Cel.Activate
            End If
        End With
    End Sub
    

    Avec les propriétés de "Cel" trouvée tu peux aussi récupérer le ""N° du bac avec lettre en majuscule, espace et chiffre ! ! ! "
    1
    1. Armel
       
      Je te remercie cela fonctionne parfaitement encore merci
      0