Recherche nom dans une colonne

Résolu
mchotard Messages postés 491 Statut Membre -  
mchotard Messages postés 491 Statut Membre -
Bonjour
Voilà, j'ai une macro dans mon fichier pour rechercher les noms dans un colonne. En tapant par exemple, ALB* dans ma fenêtre qui apparait je sélectionne tous les noms qui contiennent ces 3 lettres soit ALB, BLA, LBA etc... Serait possible de ne faire apparaitre que les noms commençant par "ALD" Merci, ci-dessous la macro que j'utilise

Sub FiltreNom()
Dim nomPdt As Variant
Sheets("Fichier Principal").Select
With Worksheets("Fichier Principal") ' adapter le nom de la feuille
' s'il y a déjà un filtre sur la feuille, le supprimer
If Not .AutoFilter Is Nothing Then .AutoFilter.Range.AutoFilter
With .Range("C1").CurrentRegion
' ajouter un filtre automatique sur la plage des données
.AutoFilter
' demander le nom à filtrer
nomPdt = Application.InputBox(Prompt:="Quel nom ?", Type:=2)
If Not nomPdt = False Then
' filtrer la colonne 3 sur le nom saisi
.AutoFilter Field:=3, Criteria1:="=*" & nomPdt & "*"
End If
End With
End With
End Sub

2 réponses

ptitpanda Messages postés 67 Statut Membre 8
 
Bonjour,

En tapant par exemple, ALB* dans ma fenêtre qui apparait je sélectionne tous les noms qui contiennent ces 3 lettres soit ALB, BLA, LBA 

Ca c'est déjà bizarre car avec ton critère de filtre il ne change pas l'ordre des lettres il devrait te filtrer tous les noms qui contiennent "ALB"

Pour ce que tu veux faire il suffit de modifier cette ligne:
.AutoFilter Field:=3, Criteria1:="=" & nomPdt & "*" 

Le fait d'enlever l'asterisque après le "=" suffit à filtrer toutes les données qui commencent par "ALB" par contre ce n'est pas la peine que tu mette l'"*" après ALD quand EXCEL te demande de choisir un nom car le code VBA met l'"*" tout seul (nomPdt & "*")

Bon dimanche
0
mchotard Messages postés 491 Statut Membre 43
 
Super ptitpanda, cela correspond tout à fait à ce que je souhaitais. Bon dimanche
0