Recherche nom dans une colonne
Résolu
mchotard
Messages postés
457
Date d'inscription
Statut
Membre
Dernière intervention
-
mchotard Messages postés 457 Date d'inscription Statut Membre Dernière intervention -
mchotard Messages postés 457 Date d'inscription Statut Membre Dernière intervention -
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
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
A voir également:
- Recherche nom dans une colonne
- Déplacer une colonne excel - Guide
- Trier une colonne excel - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Colonne word - Guide
- Formule somme excel colonne - Guide
2 réponses
Bonjour,
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:
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
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