Autres Suppression ligne selon condition

abdernino1985

XLDnaute Junior
Bonjour ,

Je veux automatisé la suppression de ligne selon un critère qui est la "GARANTIE" , a chaque fois je filtre et je supprime le reste mais parfois ça prend du temps .
1- je supprime toute les lignes je laisse que la garantie 100110.
2- je supprime toute les lignes je laisse que la garantie 030110,030112,030113,030114
comment je peux automatisé ca avec une macro .
 

Pièces jointes

  • Test(1).xlsx
    14.1 KB · Affichages: 6
Solution
Re,

Encore une fois tu es imprécis. Il es où le calcul s.a ? Et qui t'empêche de désactiver le calcul automatique en début de macro et de réactiver ensuite ?

VB:
Private Sub CommandButton1_Click() 'bouton "Valider"
Dim O As Worksheet 'déclare la variable O (onglet)
Dim DL As Integer
Dim PL As Range
Dim TC() As Variant
Dim TEST As Boolean

Application.Calculation = xlCalculationManual
Set O = Worksheets("Feuil1") 'définit l'onglet O
Set PL = O.Range("A1")
DL = O.Cells(Application.Rows.Count, "A").End(xlUp).Row
TC = Array("030110", "030112", "030113", "030114")
Application.ScreenUpdating = False
If OptionButton1.Value = True Then
    For I = 2 To DL
        If CStr(O.Cells(I, "F")) <> "100110" Then Set PL = IIf(PL.Cells.Count =...

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Abdernino, bonjour le forum,

Toujours aussi difficile à comprendre !...
Comment peux-tu supprimer les ligne du point 2 puisque, d'après tes explications, seules restent les lignes dont la garantie est à 100110 après le point 1 !?...
 

Robert

XLDnaute Barbatruc
Repose en paix
Re,

En pièce jointe ton fichier modifié. Double-clique sur n'importe quelle cellule de la colonne F (Garantie). Une boîte de dialogue s'ouvre. Sélectionne l'option que tu désires et valide...
 

Pièces jointes

  • Abdernino_ED_v01.xlsm
    27 KB · Affichages: 9

Robert

XLDnaute Barbatruc
Repose en paix
Re,

Encore une fois tu es imprécis. Il es où le calcul s.a ? Et qui t'empêche de désactiver le calcul automatique en début de macro et de réactiver ensuite ?

VB:
Private Sub CommandButton1_Click() 'bouton "Valider"
Dim O As Worksheet 'déclare la variable O (onglet)
Dim DL As Integer
Dim PL As Range
Dim TC() As Variant
Dim TEST As Boolean

Application.Calculation = xlCalculationManual
Set O = Worksheets("Feuil1") 'définit l'onglet O
Set PL = O.Range("A1")
DL = O.Cells(Application.Rows.Count, "A").End(xlUp).Row
TC = Array("030110", "030112", "030113", "030114")
Application.ScreenUpdating = False
If OptionButton1.Value = True Then
    For I = 2 To DL
        If CStr(O.Cells(I, "F")) <> "100110" Then Set PL = IIf(PL.Cells.Count = 1, O.Rows(I), Application.Union(PL, O.Rows(I)))
    Next I
    PL.Delete
End If
If OptionButton2.Value = True Then
    For I = 2 To DL
        TEST = False
        For J = 0 To 3
            If CStr(O.Cells(I, "F")) = TC(J) Then TEST = True
        Next J
        If TEST = False Then Set PL = IIf(PL.Cells.Count = 1, O.Rows(I), Application.Union(PL, O.Rows(I)))
    Next I
    PL.Delete
End If
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Unload Me
End Sub

Profite ! C'est mon dernier post avec toi... Tu fais désormais partie de ma grande liste des ...
 

Discussions similaires

Réponses
22
Affichages
767

Statistiques des forums

Discussions
312 206
Messages
2 086 202
Membres
103 157
dernier inscrit
youma