For each selon plusieurs critères

J'ai déjà régler le problème de la création d'onglets automatique selon une liste, maintenant, j'ai souhaite dire à excel selon un modèle type d'extraire les données dans chaque sous tableau et dans chaque onglet.

j'ai par exemple, francis, sandra et jean philippe qui travaillent sur plusieurs dossiers, dossier compta, dossier secretariat et dossier educatif.

Je souhaiterai créer selon un modèle avec 3 sous-tableaux dans chaque onglet (compta - secretariat - educatif) l'extraction de toutes les données qui se trouvent dans une base de données commune.

voilà le code qui permet de créer un onglet selon une liste :

Sub Extrait()

Dim plage As Range

Application.DisplayAlerts = False

Application.ScreenUpdating = False

Set f = Sheets("base")

'--- Liste des travées

f.[J1] = f.[G1]

f.[A1:G10000].AdvancedFilter Action:=xlFilterCopy, CopyToRange:=f.[J1], Unique:=True

For Each c In f.Range("J2:J" & f.[J65000].End(xlUp).Row) ' pour chaque travée

On Error Resume Next

onglet = CStr(c.Value)

Sheets(onglet).Delete

On Error GoTo 0

Sheets("modèle").Copy After:=Sheets(Sheets.Count)

ActiveSheet.Name = onglet

'-- extraction

ligne = 2

For i = 2 To f.[A65000].End(xlUp).Row

If CStr(f.Cells(i, "G")) = onglet Then

Cells(ligne, "A") = f.Cells(i, "G")

Cells(ligne, "J") = f.Cells(i, "D")

Cells(ligne, "I") = f.Cells(i, "C")

ligne = ligne + 1

End If

Next i

Next c

End Sub

En faite c'est la boucle qui permet de dire à excel tant qu'il y a un nom sur la liste (onglet à créer), créer selon modèle avec 3 sous tableaux sur le même onglet en répartissant les données compta, educatif et secrétariat.

Quelqu'un pourrait m'aider svp à concevoir la macro ?

Bonjour,

Avant de te lancer dans une macro, tu peux essayer la souplesse du Tableau Croisé Dynamique ...

A+

merci james, je ne suis pas à l'aise avec les tcd malheureusement, et je vise la programmation pour créer des applications personnalisées

merci d'avoir répondu james

à bientôt

Puisque tu as envie de pousser le code VBA, je te conseille d'uiliser l'enregistreur de macros et d'aller à travers ton processus avec un filtre avancé ... tu devrais obtenir l'essentiel de l'ossature de ton code...

A+

merci pour tes conseils james, je peux t'envoyer ce que j'ai réaliser pour que tu vois ce dont je suis capable. Je souhaitais simplement avoir des pistes pour maitriser les boucles for each pour avancer dans ce que je suis en train de réaliser.

A bientôt

Pas de problème ...

Si tu veux poster ton code VBA : For Each .... Next, je suis ûr que tu obtiendras du Forum toutes les explications nécessaires ...

A+

Ok je prépare tout ça et je le poste,

à bientôt james

Rechercher des sujets similaires à "for each criteres"