TCD filtrer chaque nom et copier sur nouvel onglet

  • Initiateur de la discussion Initiateur de la discussion miliev83
  • 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 !

miliev83

XLDnaute Occasionnel
Bonjour à tous,

Après moultes recherches je n'ai pas réussi à trouver ce qu'il me fallait malgré les nombreux forums, en m'inscrivant j'espère alors que l'on pourra m'aider car je suis bloquée.

J'ai un fichier qui contient 2 onglet.
Un "BD" et un "planning" avec un tableau croisé dynamique
Le filtre concerne la colonne C "transporteur".

J'aimerai créer une macro me permettant de filtrer chaque nom de transporteur et de copier la totalité de la page avec l'entête jusqu'à la longueur de tcd filtré.
Une fois le premier transporteur sélectionner, j'aimerai exécuter ma macro "mise en page".

Ensuite venir coller chaque transporteur sur un nouvel onglet ayant comme titre le nom du transporteur copié.

Lorsque la totalité des transporteurs auront été collés, je souhaiterai une macro me permettant de supprimer ces nouvels onglets créés et d'enlever le filtre de la colonne C "transport".

J'ai mis en PJ le fichier utilisé simplifié.

Merci par avance aux personnes qui s'interessont à mon cas 🙂
 

Pièces jointes

Dernière édition:
Re : TCD filtrer chaque nom et copier sur nouvel onglet

Nouveau code pour filtrer le nom du transporteur en fonction du nom de la feuille
Code:
Sub te()
Sheets(1).Range("w1:w15").AdvancedFilter xlFilterCopy, , Sheets(1).Range("e20"), True

For i = 21 To Sheets(1).Range("e19").End(xlDown).Row
Sheets("planning2").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = Sheets(1).Cells(i, 5).Value
Next
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("transport")
        For j = 1 To .PivotItems.Count
            If .PivotItems(j) = ActiveSheet.Name Then
                .PivotItems(j).Visible = True
            Else
                .PivotItems(j).Visible = False
            End If
        Next
    End With

End Sub
 
Re : TCD filtrer chaque nom et copier sur nouvel onglet

Ok merci mais je pense pas que cela aille car il faudra quand même que je fasse la même procédure que mon tableau c'est à dire filtrer un à un les transporteurs, protéger ma feuille et envoyer.
 
Re : TCD filtrer chaque nom et copier sur nouvel onglet

Je recommence 🙂
en faisant un filtre avancé, tu récupères tous les transporteurs sans doublon. c'est à partir de cette liste que tu vas pouvoir créer un onglet par transporteur etc...

Le filtre avancé est le meilleur moyen pour pouvoir travailler sur tous les transporteurs sans en oublier ni en traiter en double!
 
- 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

Discussions similaires

Réponses
9
Affichages
385
Retour