• Initiateur de la discussion Initiateur de la discussion a10
  • 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 !

a10

XLDnaute Impliqué
bonjour


j'ai une macro qui me filtre toutes les lignes avec :Criteria1:="<>"
Range("E2:aa50").Select
ActiveSheet.Range("$D$1:$BA$50").AutoFilter Field:=8, Criteria1:="<>"
Selection.Copy



mais si il ne trouve pas cela ne fonctionne pas

comment faire si le Criteria1:="<>" n 'est pas valide alors il indique un message pas de filtre

a++
 
Re : filtre

Bonsoir.
VB:
Sub test()
Range("E2:aa50").Select
On Error Resume Next
ActiveSheet.Range("$D$1:$BA$50").AutoFilter Field:=8, Criteria1:="<>"
If Err Then MsgBox "Pas de filtre.", vbCritical, "Zut !": Exit Sub
On Error GoTo 0
Selection.Copy
End Sub
 
Re : filtre

Essayez comme ça :
VB:
Sub test()
Dim Plage As Range
Set Plage = ActiveSheet.AutoFilter.Range
Plage.AutoFilter Field:=18, Criteria1:="<>"
Set Plage = Plage.Offset(1).Resize(Plage.Rows.Count - 1)
On Error Resume Next
Set Plage = Plage.SpecialCells(xlCellTypeVisible)
If Err Then Set Plage = Nothing
On Error GoTo 0
If Plage Is Nothing Then MsgBox "Pas de filtre.", vbCritical, "Zut !": Exit Sub
Plage.Copy
End Sub
 
Re : filtre

Bonsoir a10, Bernard,

Code:
Sub test()
ActiveSheet.Range("D1:BA50").AutoFilter Field:=18, Criteria1:="g"
With ActiveSheet.AutoFilter.Range.SpecialCells(xlCellTypeVisible)
  If .Count = .Rows(1).Cells.Count Then MsgBox "Pas de filtre.", vbCritical, "Zut !": Exit Sub
  Intersect(.EntireRow, [E2:BA50]).Select 'mais en VBA il est inutile de sélectionner...
  Selection.Copy
End With
End Sub
A+
 
Re : filtre

Bonjour,


If .Count = .Rows(1).Cells.Count Then MsgBox "Pas de filtre.", vbCritical, "Zut !": Exit Sub => Merci cela fonctionne, mais si je veux qu'apres cliqué sur pas de filtre ma macro continue apres le end with?
Intersect(.EntireRow, [E2:BA50]).Select
Selection.Copy
End With


A+🙂
End Sub
 
Re : filtre

Bonjour le forum,

mais si je veux qu'apres cliqué sur pas de filtre ma macro continue apres le end with?

Pas encore bien réveillé ?

Code:
Sub test()
ActiveSheet.[D1:BA50].AutoFilter Field:=18, Criteria1:="g"
With ActiveSheet.AutoFilter.Range.SpecialCells(xlCellTypeVisible)
  If .Count = .Rows(1).Cells.Count Then
    MsgBox "Pas de filtre.", vbCritical, "Zut !"
    '1ère suite du code...
  Else
    Intersect(.EntireRow, [E2:BA50]).Copy
    '2ème suite du code...
  End If
End With
'3ème suite du code...
End Sub
Bonne journée.
 
- 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

Discussions similaires

Réponses
18
Affichages
990
Réponses
3
Affichages
423
Retour