Bonjour,
J'ai défini une liste d'utilisateurs abilités à faire des demandes dans la feuille Feuil1 plage B2 à B4
Dans ma feuille Sheet1, j'ai 20 000 lignes avec plein de colonnes mais la colonne de travail est la colonne C (colonne des utilisateurs)
Pour toutes les lignes, si dans ma colonne C la valeur diffère de la plage B2 à B4, alors je veux supprimer la ligne.
Autrement dit, je souhaite conserver que les lignes correspondant à des utilisateurs abilités.
J'utilise ce bout de code mais mon problème est que lorsque je supprime une ligne, mon itération i prend la valeur +1 à cause de la boucle mais comme je viens de supprimer une ligne, j'ai une incohérence entre le n°de ligne suivante à analayser qui ne prend pas +1
' Définir le nombre de lignes utiles
Range("A60000").End(xlUp).Offset(0, 0).Select
Lignemax = ActiveCell.Row
' Se positionner sur le login du requestor de la 1ere ligne
Range("C1").End(xlDown).Offset(1, 0).Select
Lignemin = ActiveCell.Row
MsgBox ("ok")
MsgBox Lignemin
MsgBox Lignemax
' Supprimer les lignes dont les logins ne font pas partie de l'équipe
For i = Lignemin To Lignemax Step 1
Sheets("Sheet1").Select
Range("C" & i).Select
valtest = Range("C" & i).Value
If valtest <> Sheets("Feuil1").Range("B2").Value Then
MsgBox valtest
MsgBox (Sheets("Feuil1").Range("B2").Value)
MsgBox ActiveSheet.Name
ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End If
'If Range("C" & i).Value <> Sheets("Feuil1").Range("B3").Value Then
' If Range("C" & i).Value <> Sheets("Feuil1").Range("B4").Value Then
' If Range("C" & i).Value <> Sheets("Feuil1").Range("B5").Value Then ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
'End If
'End If
'End If
' End If
Next