Macro / comparaison cellule à plage avec critère supplémentaire
Résolu
papuchee
-
papuchee -
papuchee -
Bonjour,
J'ai récupéré cette macro sur le forum qui a été écrite par F89****, et je souhaiterai l'adapter à mon cas sans trop savoir comment m'y prendre.
Je voudrais tester toutes mes cellules B de la feuille IP_CF, en les comparant à la plage Col_2 si la valeur en B n'est pas comprise dans la plage la supprimer. Cependant je souhaite la supprimer seulement si elle commence par V53...
Si quelqu'un peut m'aider, je lui en serai très reconnaissant
J'ai récupéré cette macro sur le forum qui a été écrite par F89****, et je souhaiterai l'adapter à mon cas sans trop savoir comment m'y prendre.
Je voudrais tester toutes mes cellules B de la feuille IP_CF, en les comparant à la plage Col_2 si la valeur en B n'est pas comprise dans la plage la supprimer. Cependant je souhaite la supprimer seulement si elle commence par V53...
Sub Compare_SN()
Dim i As Integer
Dim col_2 As Range
'Definition plage de cellules en memoire pour vitesse execution
Set col_2 = Worksheets("Feuil2").Range("A2:A1217")
With ThisWorkbook.Sheets("IP_CF")
For i = 15000 To 2 Step -1
'Test si valeur cellule IP_CF!=Bx est dans Plage col_2(feuil2!A2:A1217))
If Application.CountIf(col_2, .Range("B" & i).Value) = 0 Then
'Delete ligne i IP_CF
.Rows(i).Delete
End If
Next i
End With
End Sub
Si quelqu'un peut m'aider, je lui en serai très reconnaissant
1 réponse
-
Bonjour,
Peut-être :
Sub Compare_SN() Dim i As Integer Dim col_2 As Range 'Definition plage de cellules en memoire pour vitesse execution Set col_2 = Worksheets("Feuil2").Range("A2:A1217") With ThisWorkbook.Sheets("IP_CF") For i = 15000 To 2 Step -1 'Test si valeur cellule IP_CF!=Bx est dans Plage col_2(feuil2!A2:A1217)) If Left(.Range("B" & i).Value,3)="V53" Then If Application.CountIf(col_2, .Range("B" & i).Value) = 0 Then 'Delete ligne i IP_CF .Rows(i).Delete End If End If Next i End With End Sub
A+