Insertion d'un nombre de feuilles en fonction d'un nombre

mic

XLDnaute Nouveau
Bonjour tout le monde

Je vous sollicite de nouveau pour un problème VBA

J'aimerai insérer des feuilles en fonction d'un nombre déterminé.

en colonne A on les types de fruits

le but de la macro est :

- faire un filtre élaboré de manière à connaitre le nombre de type de fruit différent (colonne E)
- pour chaque type copier les infos correspondantes dans une nouvelle feuille

Mon problème , c'est le nombre de feuille

Il faut que je les crée avant de lancer ma macro et en mettre un nombre suffisant (à savoir nombre de type différent +1 ) sinon ça bug.


Est il possible d'insérer un nombre de feuille en fonction du nombre de type de Fruit trouvé grâce au filtre élaboré ?

Merci beaucoup pour votre aide ( je suis nul nul nul , ça doit pas être bien compliqué :confused: )
 

Pièces jointes

  • fruit.xls
    36.5 KB · Affichages: 59
  • fruit.xls
    36.5 KB · Affichages: 64
  • fruit.xls
    36.5 KB · Affichages: 62

Spitnolan08

XLDnaute Barbatruc
Re : Insertion d'un nombre de feuilles en fonction d'un nombre

Bonjour mic,
au lieu d'ajouter n feuilles tu peux ajouter une feuille dans ta boucle à chaque fois que tu en as besoin :
Code:
For n = 2 To Sheets("Feuil1").Range("E65536").End(xlUp).Row
    Sheets.Add after:=Sheets(1)
    With activesheet
    ....Ce que tu veux faire sur cette feuille...
    end with
Next
Cordialement
 

mic

XLDnaute Nouveau
Re : Insertion d'un nombre de feuilles en fonction d'un nombre

merci Spitnolan08 .

J'ai essayé mais ma boucle ne repart pas .
Une feuille a été crée avec le premier type de fruit " orange" mais ça s'arrête là
--------------------------------------------------------------------
For n = 2 To Sheets("Feuil1").Range("E65536").End(xlUp).Row
Sheets.Add after:=Sheets(1)
With ActiveSheet
Worksheets("Feuil1").Range("A2") = Worksheets("Feuil1").Cells(n, 5)
Worksheets("Feuil1").Range("A4:C22").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Worksheets("Feuil1").Range("A1:C2"), _
CopyToRange:=Worksheets(n).Range("A1:C65536"), Unique:=False
Worksheets(n + 1).Select
End With
-------------------------------------------------------------------

je suis une vrai chèvre :eek:
 

Spitnolan08

XLDnaute Barbatruc
Re : Insertion d'un nombre de feuilles en fonction d'un nombre

Re,

Je ne comprends pas bien ce que tu fais avec ton code pusiqu'en fait tu ne fais rien sur la nouvelle feuille, mais par contre ça crée autant de feuilles que nécessaire :
Code:
For n = 2 To Sheets("Feuil1").Range("E65536").End(xlUp).Row
    Sheets.Add after:=Sheets(1)
    With ActiveSheet
        Worksheets("Feuil1").Range("A2") = Worksheets("Feuil1").Cells(n, 5)
        Worksheets("Feuil1").Range("A4:C22").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Worksheets("Feuil1").Range("A1:C2"), CopyToRange:=Worksheets(n).Range("A1:C65536"), Unique:=False
    End With
Next
Cordialement
 

Spitnolan08

XLDnaute Barbatruc
Re : Insertion d'un nombre de feuilles en fonction d'un nombre

Re,
Désolé, j'avais raté une instruction... Pour que ça renseigne la feuille créée :
Code:
For n = 2 To Sheets("Feuil1").Range("E65536").End(xlUp).Row
    Sheets.Add after:=Sheets(Sheets.Count)
    With ActiveSheet
        Worksheets("Feuil1").Range("A2") = Worksheets("Feuil1").Cells(n, 5)
        Worksheets("Feuil1").Range("A4:C22").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Worksheets("Feuil1").Range("A1:C2"), CopyToRange:=Worksheets(n).Range("A1:C65536"), Unique:=False
    End With
Next
Cordialement
 

mic

XLDnaute Nouveau
Re : Insertion d'un nombre de feuilles en fonction d'un nombre

merci beaucoup Spitnolan08

Effectivement ça fonctionne et en effet ça ne copie rien sauf sur la première feuille créée :confused: .

il y a donc un problème dans ma boucle ( plus pour créer des feuilles ) mais pour copier les données sur chaque feuilles:confused: :(

en gros ma macro devrait fonctionner de cette manière :
dans type de fruit je filtre le type orange , je crée une feuille et je recopie toutes les infos " orange" , puis je recommence autant de fois qu'il y a de type.
Le filtre élaboré me permet dans un premier temps de savoir combien je vais avoir de types différents , donc de créer autant de feuilles
 

mic

XLDnaute Nouveau
Re : Insertion d'un nombre de feuilles en fonction d'un nombre

Merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii :) :) :)

T'es un chef c'est exactement ça ;)

Un grand merci Spitnolan08

Je te souhaite une bonne soirée

à +
 

Discussions similaires

Réponses
14
Affichages
639

Statistiques des forums

Discussions
311 725
Messages
2 081 942
Membres
101 849
dernier inscrit
florentMIG