VBA - Plusieurs onglets à partir d'un onglet source

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 !

Arnaud81

XLDnaute Junior
Bonjour,

J'ai un fichier excel (cf. exemple joint ci dessous) avec un onglet "données sources" avec une liste de projets et de sous projets associés et trois onglets correspondants au trois projets principaux "P1" "P2" "P3"

La liste de projet est d'environ 400 lignes et je la récupère chaque semaine d'un autre fichier. Les projets sont identiques mais le nombre de sous projets augmentent au fur et à mesure

Je souhaiterais pouvoir, par macro (que j'intègrerai dans une macro plus globale), rapatrier automatiquement les lignes correspondant à chaque projet dans son onglet : lignes P1 dans l'onglet P1, etc...

Une idée ?

Merci d'avance
 

Pièces jointes

Re : VBA - Plusieurs onglets à partir d'un onglet source

Voir PJ

Code:
Sub Extrait()
  Set f = Sheets("BD")
  Application.DisplayAlerts = False
  Application.ScreenUpdating = False
  '--- Liste des projets
  f.[A1:D10000].AdvancedFilter Action:=xlFilterCopy, CopyToRange:=f.[m1], Unique:=True
  For Each c In f.Range("m2:m" & f.[m65000].End(xlUp).Row)   ' pour chaque projet
     f.[m2] = c.Value
     On Error Resume Next
     Sheets(c.Value).Delete
     On Error GoTo 0
     Sheets.Add After:=Sheets(Sheets.Count)   ' création
     ActiveSheet.Name = c.Value
     [a1] = "Projet": [b1] = "Sous projet 2": [c1] = "Statut"
     '-- extraction
     f.[A1:J10000].AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=f.[m1:m2], CopyToRange:=[A1:C1]
   Next c
End Sub

JB
 

Pièces jointes

- 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

Retour