Filtre sur plusieurs colonnes ( VBA excel 2010 )

Résolu
leguedin67 - 5 févr. 2013 à 09:44
 leguedin67 - 12 févr. 2013 à 11:42
Bonjour à tous,

je suis nouveau en VBA.
je suis actuellement entraint de créer une interface pour ma boite.
Je dois réaliser un filtre suivant certain critère de recherche ici pour la recherhce d'un nom où prénom entré dans la inputbox
Voici le code :

Private Sub cmdNom_Click()

Recherche.Hide

'***************************************************
' pour effectuer une recherche avec un nom où prénom
'***************************************************

Dim Nom As String

Nom = InputBox("Saisissez un nom", "Recherche par Nom :", "Tapez votre recherche")

ColNom = 7 ' le numéro de la colonne Nom où Prénom du tableau
Ligne = 4 ' numéro de la premiere ligne à lire

' boucle tant que la cellule Nom comporte quelque chose
While Cells(Ligne, ColNom) <> ""

' If Cells(Ligne, ColNom).Value <> Nom Then

' premet de filtré suivant le nom où le prénom
If InStr(1, LCase(Cells(Ligne, ColNom).Value), LCase(Nom)) = 0 Then
Rows(Ligne).Select
Selection.EntireRow.Hidden = True
End If
Ligne = Ligne + 1
Wend ' fin boucle

End Sub

Je suis bloqué à ce niveau, je sais pas comment je pourrais réalisé le filtre sur 2 voir 30 colonnes avec mon code
Il sera pour des personnes non formé à excel donc c'est pour cela que je préfère que la recherche se passe via une inputbox sans passé par les filtres de excel
En vous remerciant beaucoup

Le_Guedin

11 réponses

Merci à toi Jack !!!
j'avais trouvé une autre méthode pour pouvoir effectuer un trie suivant la cellule qu'on souhaite :

ColNom = [A3:Z3].Find(What:="Problem Owner", LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByColumns).Column


Et celui fonctionne bien


Par contre j'ai vu un autre soucis
Lorsque la 1ère cellule qui est a filtré et vide rien ne ce passe ... est-il possible de remplir les cellules vide avec une action comme un bouton et de les remplir avec / ??

Merci de votre aide
3
Rejoignez-nous