1 pièce(s) jointe(s)
Exporter un tableau vers X nouveaux classeurs Excel en filtrant sur une colonne
Bonjour !
Je viens vers vous car j'ai un besoin simple mais que je n'arrive pas à combler:
J'ai un tableau en fichier joint qui doit me permettre de filtrer l'onglet par trigramme dans la colonne "who" puis generer un fichier excel séparé par personne dans la colonne "who" et l'enregistrer.
Je suis parti du tuto de "Philippe Tulliez" ici: https://philippetulliez.developpez.c...dvancedfilter/
ça ok j'ai compris.
Cependant si je tente d'utiliser ce code la en exemple trouvé ici:
https://www.developpez.net/forums/d1...l/#post7190633
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| Sub ExportDataByAdvancedFilter()
' Déclaration + Initialisation des variables
Dim rngList As Range, rngData As Range, rngCriteria As Range, r As Long
Set rngData = shtData.Range("A1").CurrentRegion
With shtParam
Set rngList = .Range("A1"): Set rngCriteria = .Range("C1:C2")
End With
' Etape 1 - Création d'une liste unique basée sur la colonne 1
With rngData
.Resize(, 1).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=rngList, Unique:=True
End With
' Etape 2 - Boucle sur la liste avec placement du critère
' Création nouvelle feuille
' Exportation vers nouvelle feuille
' Déplacement de cette nouvelle feuille vers un nouveau classeur
For r = 1 To rngList.CurrentRegion.Rows.Count - 1
rngCriteria.Cells(2, 1) = rngList.Offset(r) ' Insère le critère
' 2.1 - Création d'une feuille
Sheets.Add before:=Sheets(1): Sheets(1).Name = rngList.Offset(r)
' 2.2 - Exportation vers nlle feuille suivant critère
With rngData
.AdvancedFilter xlFilterCopy, rngCriteria, Sheets(1).Range("A1")
End With
' 2.3 - Déplacement de la feuille cers un nouveau classeur
Sheets(1).Move
'
' Ici code pour sauver classeur, Envoyer par email etc...
'
Next
End Sub |
sur ma feuille à moi, il me sort l'erreur:
"Objet requis" sur la ligne
Code:
Set rngData = shtData.Range("A1").CurrentRegion
Alors Ok ma variable rngData est mal déclarée, mais j'aimerais pouvoir lui dire que c'est la colonne "Who" dans l'onglet options, or je ne vois nulle part dans le code de Philippe de déclaration spécifique en disant "c'est dans cet onglet la que tu cherche la data, et dans cet onglet la que tu cherches les criteres"
J'ai raté quelque chose c'est évident, mais quoi et ou ?
J'ai enlevé le code de la macro pour que vous puissiez ouvrir sans risque, mais si vous avez des pistes, je suis preneur.
d'avance merci :)