Message si filtre auto ne rapporte rien

Bonjour le forum,

voila j'ai mis un code pour filtrer automatiquement dans 2 colonnes. Mais si je lui demande de rechercher des cellules qui ne sont pas dans les colonnes, j'ai un message d'erreur.

Donc je souhaiterai avoir un message me disant "Merci de vérifier vos informations saisies".

voici mon code pour les filtres

With Worksheets("Feuil3")

If Not .AutoFilter Is Nothing Then .Cells.AutoFilter

.Columns("A:H").AutoFilter

.Range("$A$1:$H$150000").AutoFilter Field:=1, Criteria1:="=" & Worksheets("home").Range("XFB2").Value

.Range("$A$1:$H$150000").AutoFilter Field:=8, Criteria1:="=*" & Worksheets("home").Range("XFC2").Value & "*"

End With

Merci pour votre aide...

Laurent

Bonjour,

Si aucune ligne d'affichées :

If AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count = 1 Then

Si c'est par colonne, à part un .find dedans je ne vois pas.

eric

Bonjour Eric,

merci pour ta réponse ... mais je débute un peu, et j'avoue que je ne sais pas a quel endroit je dois mettre ton code ?

Peux-tu m'expliquer ?

Merci par avance

Laurent

Et bien après avoir appliqué tes filtres, là où tu veux afficher ta msgbox.

If AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count = 1 Then 
    msgbox "Aucune sélection, vérifiez vos critères"
else
    ' ton code qui plantait
endif

eric

je dois pas etre tres doué, car je suis pas arrivé a faire ce que tu m'as dit. ...

j'ai fait ça comme code

'filtre1 sur le product code

With Worksheets("Feuil3")

If Not .AutoFilter Is Nothing Then .Cells.AutoFilter

.Columns("A:H").AutoFilter

.Range("$A$1:$H$150000").AutoFilter Field:=1, Criteria1:="=" & Worksheets("home").Range("XFB2").Value

.Range("$A$1:$H$150000").AutoFilter Field:=8, Criteria1:="=*" & Worksheets("home").Range("XFC2").Value & "*"

End With

'message erreur pas de code produit et CCR

If AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count = 1 Then

MsgBox "Aucune sélection, vérifiez vos critères"

Else

'.Range("$A$1:$H$150000").AutoFilter Field:=1, Criteria1:="=" & Worksheets("home").Range("XFB2").Value

'.Range("$A$1:$H$150000").AutoFilter Field:=8, Criteria1:="=*" & Worksheets("home").Range("XFC2").Value & "*"

End If

'copier le filtre1 et le coller dans Export

je sais pas si le code que j'ai mis est bien le bon ???

Encore merci pour ton aide

Laurent

A quoi ça sert de remettre ton code pour les filtres une 2nde fois ?

Si tu as des lignes filtrées c'est bien pour en faire qq chose non ?

Si tu as 0 lignes tu alertes et tu rends la main à l'utilisateur qu'il puisse corriger (exit sub par exemple) puisqu'il doit saisir dans des cellules.

Sinon tu fais le traitement prévu.

Sans fichier (réduit au nécessaire) ni explications plus complètes sur le fonctionnement voulu on risque de discuter dans le vide un moment...

eric

Rechercher des sujets similaires à "message filtre auto rapporte rien"