Re : conserver que les lignes contenant, en colonne "D", un critère et effacer les a
Bonsoir, à tous deux.
la modification de Laëtitia fonctionne admirablement, je vais essayer celle de Robert, mieux vaut deux solutions plutôt qu'une.
Merci à tous les deux.
J'ai une autre question, dans la même feuille, une fois les critères éliminés, les lignes restantes sont des lignes correspondant à des références, je les trie de manière à les classer puis je fais des sous-totaux à la référence.
Je ne garde que les sous-totaux pour pouvoir les exploiter. Bien sûr j'enregistre la macro avec l'outil excel, mais la macro, sur de gros fichiers, est lourde et longue. voici le code:
Sub Trie_Référence()
ActiveWorkbook.Worksheets("Références").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Références").AutoFilter.Sort.SortFields.Add Key:= _
Range("H1"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Références").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A1:M1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Subtotal GroupBy:=8, Function:=xlSum, TotalList:=Array(10, 11, 12 _
), Replace:=True, PageBreaks:=False, SummaryBelowData:=True
Cells.Select
Range("A157").Activate
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.ScrollRow = 160
ActiveWindow.ScrollRow = 125
ActiveWindow.ScrollRow = 36
ActiveWindow.ScrollRow = 1
ActiveSheet.Range("$A$1:$M$217").AutoFilter Field:=8, Criteria1:= _
"<>*total*", Operator:=xlAnd
Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.EntireRow.Delete
ActiveSheet.Range("$A$1:$M$31").AutoFilter Field:=8
End Sub
Si vous pouvez vous pencher sur ce problème se serait super sympa, y a-il une autre solution?
Merci pour votre aide, vous m'avez simplifié la tache.
bonne Soirée.
Broch002