Filtrer des donnés

Résolu/Fermé
New_VBA_User Messages postés 82 Date d'inscription mardi 27 août 2019 Statut Membre Dernière intervention 3 octobre 2019 - 28 août 2019 à 12:46
New_VBA_User Messages postés 82 Date d'inscription mardi 27 août 2019 Statut Membre Dernière intervention 3 octobre 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

1 réponse

yg_be Messages postés 22723 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 1 476
28 août 2019 à 14:04
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.
0
New_VBA_User Messages postés 82 Date d'inscription mardi 27 août 2019 Statut Membre Dernière intervention 3 octobre 2019
28 août 2019 à 14:09
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.
0
yg_be Messages postés 22723 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 1 476 > New_VBA_User Messages postés 82 Date d'inscription mardi 27 août 2019 Statut Membre Dernière intervention 3 octobre 2019
Modifié le 28 août 2019 à 14:40
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
0
New_VBA_User Messages postés 82 Date d'inscription mardi 27 août 2019 Statut Membre Dernière intervention 3 octobre 2019
4 sept. 2019 à 14:03
bonjour,
cette solution est parfaite.
Merci beaucoup.
désolé pour la réponse tardive.
0