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
764

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 100
Membres
103 116
dernier inscrit
kutobi87