Supprimer une ligne en fonction d'une comparaison de valeurs de colonne

zoomix

XLDnaute Nouveau
Bonjour à tous

Petit problème que je n'arrive pas a résoudre:

J'ai des combinsaisons de 6 chiffre avec un chiffre par colonne en A B C D E F.

en colonne G j'ai le résultat avec un &

Je souhaiterais supprimer la ligne si la valeur de la colonne G existe n'importe où en colonne H

j'ai remplis 2 valeurs en colonne H pour essai

merci de votre aide

Regarde la pièce jointe ARRANGEMENT_3.xlsm
 

Modeste

XLDnaute Barbatruc
Re : Supprimer une ligne en fonction d'une comparaison de valeurs de colonne

Bonjour zoomix,

Pas certain d'avoir bien compris: il s'agit de supprimer chaque ligne dans laquelle, en colonne G, figure une valeur également présente en colonne H? Si c'est l'inverse, je suppose que tu sauras adapter (si pas, dis-le nous).
Remplace le code de ton module par celui-ci:
VB:
Sub suppr()
Application.ScreenUpdating = False
With Sheets("Feuil1")
    For i = .Range("G" & Rows.Count).End(xlUp).Row To 1 Step -1
        If Application.CountIf(.[H:H], Val(.Cells(i, 7))) Then .Cells(i, 7).EntireRow.Delete
    Next i
End With
Application.ScreenUpdating = True
End Sub

Attention au fait que, dans le cas présent les valeurs en colonne G sont de type texte, tandis qu'en colonne H elles sont numériques (ici aussi, il te faudra peut-être adapter)
 

zoomix

XLDnaute Nouveau
Re : Supprimer une ligne en fonction d'une comparaison de valeurs de colonne

Bonjour zoomix,

Pas certain d'avoir bien compris: il s'agit de supprimer chaque ligne dans laquelle, en colonne G, figure une valeur également présente en colonne H? Si c'est l'inverse, je suppose que tu sauras adapter (si pas, dis-le nous).
Remplace le code de ton module par celui-ci:
VB:
Sub suppr()
Application.ScreenUpdating = False
With Sheets("Feuil1")
    For i = .Range("G" & Rows.Count).End(xlUp).Row To 1 Step -1
        If Application.CountIf(.[H:H], Val(.Cells(i, 7))) Then .Cells(i, 7).EntireRow.Delete
    Next i
End With
Application.ScreenUpdating = True
End Sub

Attention au fait que, dans le cas présent les valeurs en colonne G sont de type texte, tandis qu'en colonne H elles sont numériques (ici aussi, il te faudra peut-être adapter)

Bonjour modeste,

C'est presque ca , j'ai testé et ca supprime la ligne mais uniquement quand la valeur H est sur la meme ligne que G
pourtant tu as bien compris le problème et je vois que dans le code il est bien noté "H:H" .

Donc il faudrait supprimer la ligne pour laquelle ca valeur en G est présente n'importe où en colonne H

Je vais essayer de trouver le problème ..mais tu as une solution

merci a tous
 

Discussions similaires

Réponses
22
Affichages
784

Statistiques des forums

Discussions
312 240
Messages
2 086 518
Membres
103 241
dernier inscrit
Peyo33