Bonsoir le forum

Je sollicite votre aide pour améliorer les performances du code ci-dessous.
En effet, je passe par le filtre avancé pour extraire les factures impayés.
Les feuilles concernées sont les suivantes :
ETAT_VENTE : elle centralise toutes les ventes facturées
CRITERES : elle comporte les critères pour le filtre avancé
IMPAYES : les facture impayés sont extraites et collées sur cette feuille.
Il faut signaler que toutes les feuilles sont protégées et cachées au départ et à la fin de l'exécution du code sauf la feuille impayée qui reste visible pour permettre au caissier de voir les factures impayées.
Le véritable problème du code est qu'il fonctionne mais il est très lent et je souhaite qu'on m'aide à améliorer le code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Application.DisplayAlerts = False
Sheets("ETAT_VENTE").Visible = True
Sheets("CRITERES").Visible = True
Sheets("IMPAYES").Visible = True
Sheets("IMPAYES").Unprotect "pla"
Sheets("ETAT_VENTE").Unprotect "pla"
Sheets("ETAT_VENTE").Select
    Range("A1:N300000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
    Sheets("CRITERES").Range("A1:N2"), Unique:=False
    Columns("A:N").Select
    Selection.Copy
    Sheets("IMPAYES").Select
    Columns("A:A").Select
    ActiveSheet.Paste
    Sheets("ETAT_VENTE").Select
    Application.CutCopyMode = False
    'ActiveSheet.ShowAllData
    Range("A1").Select
    Application.DisplayAlerts = True
    Sheets("IMPAYES").Select
    Range("A1").Select
Sheets("ETAT_VENTE").Visible = False
Sheets("CRITERES").Visible = False
 Sheets("IMPAYES").Protect "pla"
Sheets("ETAT_VENTE").Protect "pla"
Merci de m'aider sachant que je reste disponible pour tout complément d'information.