Temps d'exécution macro pour filtrer TCD

Bonjour au forum,

Je dois utiliser une macro pour faciliter le tri de certaines données dans une trentaine de TCD, chacun avec environ 1000 items.

J'ai écris ce petit bout de code mais malheureusement le temps d'exécution même sur un seul TCD est déjà très long (trop pour les destinataires du fichier).

Sub test() '23.01.2023

Dim pt As PivotTable

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For Each pt In Sheets("Traitement").PivotTables
    If pt.Name = "TCDCE_Total" Then
        With pt
            .PivotFields("Destination").ClearManualFilter  '.ClearAllFilters
            .PivotFields("Destination").EnableMultiplePageItems = True
            For Each pi In pt.PivotFields("Destination").PivotItems
                If pi.Name Like "HUG*" Or pi.Name Like "R***" Then
                    pi.Visible = False
                Else: pi.Visible = True
                End If
            Next pi
        End With
    End If
Next pt
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub

Est-ce possible d'améliorer ce traitement de données ?

Merci d'avance !

bonjour, que ce passe-t-il quand vous ajoutez une colonne supplémentaire à votre source avec 2 valeurs, 1 pour les destinations "HUG*" et "R*" et 0 pour le reste. Puis vous utilisez cette colonne pour filtrer.

Votre "R***" est la même chose que "R*", vous voulez 4 charactères comme ça "R???" ?

Bonjour BsAlv,

Excellente idée l'ajout de colonne supplémentaire, le tri est effectivement quasi instantané maintenant, merci beaucoup !

Concernant le "R***", j'ai fais une erreur de frappe, c'est bien une recherche avec "R???" que j'effectue.

Merci encore pour l'astuce très utile !

Bonne journée !

Rechercher des sujets similaires à "temps execution macro filtrer tcd"