Filtre, copier, coller

Fermé
mateo44 Messages postés 11 Date d'inscription jeudi 7 avril 2016 Statut Membre Dernière intervention 18 avril 2016 - 15 avril 2016 à 15:17
mateo44 Messages postés 11 Date d'inscription jeudi 7 avril 2016 Statut Membre Dernière intervention 18 avril 2016 - 15 avril 2016 à 16:43
Bonjour,

Je vous adresse ce message puisque je galère complètement sur ce que je veux faire ..!

J'ai un fichier excel avec 3 feuilles.
Dans chacune de feuilles il y a un code groupe. (16 groupes) et d'autres variables !

Je dois :

- afficher dans une liste les 16 groupes (ça OK)

- mais lorsque je sélectionne un groupe, je dois afficher uniquement les informations pour ce groupe.. S'il y a 10 lignes dans le groupe 1, je dois afficher QUE les 10 lignes (il ne faut pas que ça soit un filtre normal qui lorsque je reclick su filtre, me fasse apparaître toutes les lignes à nouveau)

- copier le résultat du filtre dans un nouveau classeur de sorte que si je sélectionne le groupe 1 dans la liste, un classeur excel doit se créer avec les 3 feuilles avec les info du groupe 1..

Si vous avez des pistes pour m'aider ça serait vraiment sympa..

Cordialement,

Mateo
A voir également:

3 réponses

Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 645
15 avril 2016 à 15:20
Salut,

Fais un tableau croisé dynamique.
0
mateo44 Messages postés 11 Date d'inscription jeudi 7 avril 2016 Statut Membre Dernière intervention 18 avril 2016
15 avril 2016 à 15:27
Private Sub CommandButton2_Click()
Dim groupe As Integer
groupe = InputBox("groupe?")
Range("B1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$O$428").AutoFilter Field:=2, Criteria1:="groupe"
Range("A1:O428").Select
Range("B1").Activate
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Paste
End Sub

Voici le début de mon compte, cependant quand je rentre le nom du groupe ça ne marche pas, mais si je remplace groupe par la valeur précise cela fonctionne.
0
mateo44 Messages postés 11 Date d'inscription jeudi 7 avril 2016 Statut Membre Dernière intervention 18 avril 2016
15 avril 2016 à 16:19
J'ai donc ensuite essayé d'automatiser avec une boucle, ça créer bien les 16 feuilles avec les noms de colonnes, mais pas les valeurs filtrées !!!

Private Sub CommandButton3_Click()
Dim i As Integer
For i = 1 To 16
Selection.AutoFilter
ActiveSheet.Range("$A$1:$O$428").AutoFilter Field:=2, Criteria1:="100+i"
Range("A1:O428").Select
Range("B1").Activate
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Paste
Sheets("Feuil6").Select
Application.CutCopyMode = False
Selection.AutoFilter
Next
End Sub


Des suggestions ?
0
Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 645
15 avril 2016 à 16:20
Tu as testé le mode pas à pas avec les espions? Si tu ne connais pas tape sur google, ça aide énormément en vba.
0
mateo44 Messages postés 11 Date d'inscription jeudi 7 avril 2016 Statut Membre Dernière intervention 18 avril 2016
15 avril 2016 à 16:31
Oui ! mais je sais où est l'erreur ^^

ActiveSheet.Range("$A$1:$O$428").AutoFilter Field:=2, Criteria1:="100+i"

il reconnait pas le i, enfin, quand je fais for i = 1 to 2
il va me créer deux feuilles, mais dans le filtre il ne prend pas en compte le i

Je veux qu'il me créer une feuille pour le groupe 101 avec les valeurs du groupe
Une autre pour le groupe 102
etc..

Mais lui ne créer que les feuilles sans prendre les valeurs !! Il comprend pas que 100+i = 101, 102, 103, ... 116
0
Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 645
15 avril 2016 à 16:32
écris "100" & i
0
mateo44 Messages postés 11 Date d'inscription jeudi 7 avril 2016 Statut Membre Dernière intervention 18 avril 2016 > Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020
15 avril 2016 à 16:38
Nop il veut pas ça fait toujours la même chose, feuille créer sans les valeurs

j'ai essayé : ^

"100" & i

"100"&"i"

"10&i"

"10"&i

"10" & "i"

ça veut pas !
0
Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 645
15 avril 2016 à 16:40
"100" + i
0