bonjour le forum,
bonjour à tous,
je n'arrive pas à trouver la solution au problème suivant :
code
Private Sub B_Click()
Set d = CreateObject("Scripting.Dictionary")
nM = Worksheets("Donnees").Cells(Worksheets("Donnees").Rows.Count, 16).End(xlUp).Row
For i = 3 To nM
d(Worksheets("Donnees").Cells(i, 16).Value) = i
Next i
nD = Worksheets("Donnees").Cells(Worksheets("Donnees").Rows.Count, 1).End(xlUp).Row
For i = 3 To nD
If d.exists(Worksheets("Donnees").Cells(i, 1).Value) Then d.Remove (Worksheets("Donnees").Cells(i, 1).Value)
Next i
With Worksheets("Donnees")
For Each k In d.keys
lgn = d(k)
For col = 11 To 16
.Cells(lgn, col).Delete Shift:=xlUp
Next
Next k
End With
End Sub
lorsque je fais for i = nM to 3 et for i = nD to 3 afin qu'il supprime de bas en haut lorsqu'il y a plusieurs lignes à supprimer, ça ne fonctionne plus.
pour la compréhension, j'importe les données des colonnes A à J et j'aimerais que quand un (ou plusieurs) code(s) en colonne A n'est plus représenté en colonne P alors la (ou les) ligne(s) correspondante(s) en colonnes K à O soient également supprimées,
c'est l'objet du code.
merci d'avance pour votre aide.
Pedro.