Filtrer des donnés [Résolu]

Messages postés
55
Date d'inscription
mardi 27 août 2019
Statut
Membre
Dernière intervention
17 septembre 2019
- - Dernière réponse : New_VBA_User
Messages postés
55
Date d'inscription
mardi 27 août 2019
Statut
Membre
Dernière intervention
17 septembre 2019
- 4 sept. 2019 à 14:03
Bonjour,
Exemple de fichier: https://www.cjoint.com/c/IHCkR3UcpbI

J’aimerai faire un filtre pour supprimer les lignes dans la feuille « Filtered Data SAP » avec les mots qui se trouvent dans les feuilles Description et Description2.

Dans la feuille « Filtered Data SAP » Description se trouve dans la colonne C et Description2 dans la colonne E.

J’ai 2 boutons Filtre Description et Filtre Description2.

Bouton Filtre Description supprime les lignes avec des mots qui sont dans la feuille Description.

Et Bouton Filtre Description2 supprime les lignes avec des mots qui sont dans la feuille Description2.

Des idées pour bien faire.

Merci de votre aide.
Salutations.


Configuration: Windows / Edge 18.17763
Afficher la suite 

1 réponse

Messages postés
8548
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 septembre 2019
424
0
Merci
bonjour, moi je ferais une boucle pour parcourir les lignes de données, en commençant par le bas, et, si le contenu doit être supprimé, je le supprimerais.
New_VBA_User
Messages postés
55
Date d'inscription
mardi 27 août 2019
Statut
Membre
Dernière intervention
17 septembre 2019
-
bonjour,

Comment feriez-vous avec un boucle, je ne maitrise pas trop les boucle vue que je suis nouveau dans ce domaine.

Merci d'avance pour votre aide.
yg_be
Messages postés
8548
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 septembre 2019
424 > New_VBA_User
Messages postés
55
Date d'inscription
mardi 27 août 2019
Statut
Membre
Dernière intervention
17 septembre 2019
-
voici un exemple:
Option Explicit
Private Sub CommandButton_FiltreDescription_Click()
Call filtrons(Sheets("Description"), 3)
End Sub

Private Sub filtrons(flfiltre As Worksheet, ncoltest As Long)
Dim nligdata As Long, fldata As Worksheet, nligfiltre As Long
Set fldata = Sheets("Filtered Data SAP")
nligdata = 2
Do While fldata.Cells(nligdata, ncoltest) <> ""
    nligfiltre = 2
    Do While flfiltre.Cells(nligfiltre, 1) <> ""
        If fldata.Cells(nligdata, ncoltest) = flfiltre.Cells(nligfiltre, 1) Then
            fldata.Rows(nligdata).Delete
            nligdata = nligdata - 1
            Exit Do
        End If
        nligfiltre = nligfiltre + 1
    Loop
    nligdata = nligdata + 1
Loop
End Sub
New_VBA_User
Messages postés
55
Date d'inscription
mardi 27 août 2019
Statut
Membre
Dernière intervention
17 septembre 2019
-
bonjour,
cette solution est parfaite.
Merci beaucoup.
désolé pour la réponse tardive.
Commenter la réponse de yg_be