Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Recherche dans Base de donnees

XC2ONE

XLDnaute Junior
BONJOUR LE FORUM,

Dans une macro de recherche d'une suite dans une base de données (a8:C1500), actuellement quand il y a doublons ou homonymes , je n'arrive pas les à atteindre. Le premier trouvé se met en surbrillance, comment faire pour atteindre les autres lignes en appuyant sur entrée :

Voici le code concerné :

Code:
' Saisie des données de la feuille
Sheets('BDD').Select
Range('C2').Select
ActiveCell.FormulaR1C1 = InputBox(Message1, TITRE1, ValDéf1)
Sheets('BDD').Select
On Error Resume Next
Dim X As Range
Set X = Cells(2, 3)
If X = '' Then Exit Sub 'si la cellule J2 est vide (fin de la macro)
'Selection de toute la colonne D
Range('A8:C1500').Select
Selection.Interior.ColorIndex = xlNone
Selection.Find(What:=X, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate
ActiveCell.Select
Selection.EntireRow.Select
With Selection.Interior.ColorIndex = 35
End With
End Sub

Merci par avance

Bonne fin de journée...
 

MichelXld

XLDnaute Barbatruc
bonsoir XC2ONE

j'espere que cette adaptation pourra t'aider


Code:
Dim X As Range, Plage As Range, C As Range
Dim Adresse As String

Sheets('BDD').Select
Range('C2').Select

' Saisie des données de la feuille
Sheets('BDD').Range('C2').FormulaR1C1 = InputBox(Message1, TITRE1, ValDéf1)

On Error Resume Next

Set X = Sheets('BDD').Cells(2, 3)
If X = '' Then Exit Sub 'si la cellule C2 est vide (fin de la macro)

Sheets('BDD').Range('A8:C1500').Interior.ColorIndex = xlNone

Set Plage = Sheets('BDD').Range('A8:C1500')

With Plage
    Set C = .Find(What:=X, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False)
    
    If Not C Is Nothing Then
        Adresse = C.Address
        Do
        C.Select
        Rows(C.Row).Interior.ColorIndex = 35
        Set C = .FindNext(C)
        Loop While Not C Is Nothing And C.Address <> Adresse
    End If
End With


bonne soiree
MichelXld
 

Discussions similaires

Réponses
12
Affichages
652
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…