XL 2016 ne faire apparaitre que les lignes qui...

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 !

eastwick

XLDnaute Accro
Bonjour à toutes et tous,

Dans un tableau, j'aimerais ne laisser visibles que les lignes dont la colonne F (F2 à F800) ont une valeur supérieure ou égale à 80% (ou 0,8).
Je vous remercie.
 
Solution
VB:
Sub FiltrerColonneF_80()
    FiltreElabore _
        NomFeuille:="Feuil1", _
        PlageDonnees:="A1:F800", _
        NomColonne:="F", _
        Critere:=">=0,8"
End Sub

Sub FiltreElabore( _
        ByVal NomFeuille As String, _
        ByVal PlageDonnees As String, _
        ByVal NomColonne As String, _
        ByVal Critere As String, _
        Optional ByVal PlageCritere As String = "Z1:Z2")

    Dim ws As Worksheet
    Set ws = Worksheets(NomFeuille)

    ' ─── 1. Enlever tout filtre existant ───────────────────────────
    On Error Resume Next
    ws.ShowAllData
    On Error GoTo 0

    ' ─── 2. Créer la zone de critères ──────────────────────────────
    Dim c As Range
    Set c = ws.Range(PlageCritere)

    c.Cells(1...
bonjour,
pourquoi F800 et pas F:F

Filtrer les lignes où la colonne F ≥ 0,8 avec un filtre élaboré

1. Préparer la zone de critères

  1. Choisir deux cellules vides, par exemple H1 et H2.
  2. Copier exactement le nom de l’en-tête de la colonne F dans H1.
    • Si l’en-tête est "Taux" → mettre "Taux"
  3. Dans H2, écrire la condition :
Code:
>=0,8
ou pour 80% :
Code:
>=0,8
⚠️ Si Excel est en anglais : >=0.8
⚠️ Le séparateur décimal dépend de vos paramètres régionaux.
Votre zone de critères ressemble à ceci :
H1 (Nom de la colonne F)
>=0,8

2. Appliquer le filtre élaboré

  1. Sélectionner votre tableau (ex. A1:F800).
  2. Aller dans :
    Données → Avancé (groupe "Trier et filtrer").
  3. Paramétrer :
  • Action : Filtrer la liste sur place
  • Plage de la liste : votre tableau (ex. $A$1:$F$800)
  • Plage de critères : la zone H1:H2
Puis OK.

🎉 Résultat​

Excel masque automatiquement toutes les lignes où la valeur en colonne F est < 0,8, et ne laisse visibles que celles ≥ 0,8.

 
VB:
Sub FiltrerColonneF_80()
    FiltreElabore _
        NomFeuille:="Feuil1", _
        PlageDonnees:="A1:F800", _
        NomColonne:="F", _
        Critere:=">=0,8"
End Sub

Sub FiltreElabore( _
        ByVal NomFeuille As String, _
        ByVal PlageDonnees As String, _
        ByVal NomColonne As String, _
        ByVal Critere As String, _
        Optional ByVal PlageCritere As String = "Z1:Z2")

    Dim ws As Worksheet
    Set ws = Worksheets(NomFeuille)

    ' ─── 1. Enlever tout filtre existant ───────────────────────────
    On Error Resume Next
    ws.ShowAllData
    On Error GoTo 0

    ' ─── 2. Créer la zone de critères ──────────────────────────────
    Dim c As Range
    Set c = ws.Range(PlageCritere)

    c.Cells(1, 1).Value = NomColonne       ' titre identique à la colonne
    c.Cells(2, 1).Value = Critere          ' ex : ">=0,8"

    ' ─── 3. Appliquer le filtre élaboré ────────────────────────────
    ws.Range(PlageDonnees).AdvancedFilter _
        Action:=xlFilterInPlace, _
        CriteriaRange:=c
End Sub
 
VB:
Sub FiltrerColonneF_80()
    FiltreElabore _
        NomFeuille:="Feuil1", _
        PlageDonnees:="A1:F800", _
        NomColonne:="F", _
        Critere:=">=0,8"
End Sub

Sub FiltreElabore( _
        ByVal NomFeuille As String, _
        ByVal PlageDonnees As String, _
        ByVal NomColonne As String, _
        ByVal Critere As String, _
        Optional ByVal PlageCritere As String = "Z1:Z2")

    Dim ws As Worksheet
    Set ws = Worksheets(NomFeuille)

    ' ─── 1. Enlever tout filtre existant ───────────────────────────
    On Error Resume Next
    ws.ShowAllData
    On Error GoTo 0

    ' ─── 2. Créer la zone de critères ──────────────────────────────
    Dim c As Range
    Set c = ws.Range(PlageCritere)

    c.Cells(1, 1).Value = NomColonne       ' titre identique à la colonne
    c.Cells(2, 1).Value = Critere          ' ex : ">=0,8"

    ' ─── 3. Appliquer le filtre élaboré ────────────────────────────
    ws.Range(PlageDonnees).AdvancedFilter _
        Action:=xlFilterInPlace, _
        CriteriaRange:=c
End Sub
Merci
 
- 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

  • Question Question
Microsoft 365 problème d'index
Réponses
19
Affichages
237
Retour