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

recherche à partir d'un userform

  • Initiateur de la discussion Initiateur de la discussion nanie13
  • Date de début Date de début

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 !

N

nanie13

Guest
Bonjour,

J'ai crée une base de données sur excel, cette dernière est gérée par un Userform, mais je n'arrive pas finaliser mon projet.

Voilà mon petit bout de code, il fonctionne, mais s'arrête sur le premier nom trouvé. Il insère bien dans mon formulaire les données trouvées.
Mon problème c'est que parfois il y a noms identiques.
Je souhaiterais que la recherche se fasse sur toute la colonne et avoir un message s'il ne le trouve pas.

MERCI pour votre aide


Dim NomRecherché

NomRecherché = TextBoxNomRecherché

' Insère ligne
Rows("2:2").Select
Selection.Insert Shift:=xlDown
' Recherche nom dans la colonne B
Columns("B:B").Select
Selection.Find(What:=TextBoxNomRecherché, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
 
Re : recherche à partir d'un userform

Bonjour,

Mon problème c'est que parfois il y a noms identiques.
Je souhaiterais que la recherche se fasse sur toute la colonne et avoir un message s'il ne le trouve pas.
Tu veux un message s'il ne trouve pas le nom ou s'il ne trouve pas les autres noms identiques?
 
Re : recherche à partir d'un userform

Bonjour,
Ce programme lance une action pour chaque nom correppondant à TextBoxNomRecherché et affiche un message quand il ne trouve pas.
Bien sur c'est une piste à adapter si ça te convient.
Code:
Sub Test()
    Dim LaValATrouver As Range
    NomRecherché = "RENAUD"    'TextBoxNomRecherché
    On Error Resume Next
    Range("A1:A6").Select
    For Each Cell In Selection
        Set LaValATrouver = Cell.Find(What:=NomRecherché, After:=Cell, _
            LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
            SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
        'La valeur est trouvée
        If Not LaValATrouver Is Nothing Then
            MsgBox "Le nom est trouvé"
            '...TON ACTION
            'La valeur n'est pas trouvée
        Else
            MsgBox "Pas trouvé dans la sélection", vbInformation, "Résultat"
           '...TON ACTION OU PAS
        End If
    Next Cell
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
589
Réponses
3
Affichages
640
Réponses
12
Affichages
1 K
E
Réponses
5
Affichages
2 K
EDI9366
E
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…