Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Code VBA filtrage

  • Initiateur de la discussion Initiateur de la discussion solide84
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

solide84

Guest
Bonjour

Je recherche un code VBA permettant de supprimer tout les ticket Résolue

Si Statut N°Semaine = N° Semaine fermé ne pas supprimer.

Merci d'avance pour votre aide
 

Pièces jointes

Hello
avec l'enregistreur de macro, ca donne ceci
VB:
Sub Macro1()
'
' Macro1 Macro

    ActiveSheet.ListObjects("Bdd_Extraction_redmine_29").Range.AutoFilter Field:=3, Criteria1:="Résolu"
    fin = ActiveSheet.ListObjects("Bdd_Extraction_redmine_29").Range.Rows.Count
    Rows("2:" & fin).Select
    Selection.Delete Shift:=xlUp
   
    ActiveSheet.ListObjects("Bdd_Extraction_redmine_29").Range.AutoFilter Field:=3
End Sub

Cette condition que je ne comprend pas, n'est pas prise en compte
Si Statut N°Semaine = N° Semaine fermé ne pas supprimer.
 
bonjour hello

je te joins le résultat en manuel .

Effectivement je me suis sans doute mal exprimer . Je garde les tickets résolue de la même semaine.

Si N°Semaine = N° Semaine fermé on supprime pas.
 

Pièces jointes

Bonjour solide, vgendron 🙂

A mettre dans le module de la feuille.

VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim derlig&, i&

derlig = Cells(Rows.Count, 1).End(xlUp).Row

For i = derlig To 2 Step -1
If Cells(i, 3).Value = "Résolu" And Cells(i, 7).Value <> Cells(i, 2) Then Rows(i).Delete
Next i
Cancel = True
End Sub
 
Autre essai avec ceci.. surement plus long
VB:
Sub Macro1()

Application.ScreenUpdating = False
fin = ActiveSheet.UsedRange.Rows.Count
For i = fin To 2 Step -1
    If (Range("B" & i) <> Range("G" & i)) And Range("C" & i) = "Résolu" Then Rows(i).Delete Shift:=xlUp
Next i
   
Application.ScreenUpdating = True

End Sub
 
Bonjour

Merci pour votre retour. Peux tu m'expliquer comment faire pour le mettre dans le module de la feuille.

Je suis toujours passer par le mode macro.

Je suis un gros novice désoler
 
Hello

j'ai copié ton code au même endroit que vgendron

c'est la le problème
Mon code est une macro à mettre dans un module standard. Cette macro est appelée par un bouton
Le code de LoneWolf est une macro évènementielle.. qui se déclenche au double clic sur la feuille..(pas besoin de bouton), pour peu que tu mettes le code directement dans la feuille (et pas dans un module standard
Alt+F11 pour ouvrir l'éditeur
à gauche, double clic sur la feuille concernée, et à droite copier le code
 
Effectivement cela fonctionne parfaitement. Merci beaucoup pour votre aide. Il me reste un petit problème de msg box que je posterai demain. Ma macro fonctionne du tonnerre merci.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
137
Réponses
12
Affichages
713
  • Question Question
Microsoft 365 Formule excel
Réponses
7
Affichages
300
Réponses
10
Affichages
470
  • Question Question
Microsoft 365 Formule
Réponses
3
Affichages
174
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…