Bonjour à tous et tout d'abord merci de votre aide dans ma quête du code ^^
J'ai lu pas mal de post ici ou là qui m'ont bien aidé !
Pour vous résumer mon projet, il s'agit d'un onglet d'opérations qui sont classés selon des critères en colonne (type, client, etc).
L'idée est de produire à partir de cet onglet plusieurs tableaux avec des mises en forme différente. Le projet est simple mais assez complexe au final pour quelqu'un qui découvre les macros !
En clair, ma première étape, est de rechercher via un filtre élaboré les données répondant à 2 critères croisés et les coller dans un autre onglet
- soit tout en haut si l'onglet est vide
- soit 2 lignes en dessous du précédent bloc de données
Voilà le code en l'état:
Si c'est vide, alors, la plage pour le collage du filtre élaboré sera la première ligne.
Sinon, c'est l'intersection de deux zones (j'ai pas su faire autrement pour sélectionner 2 lignes en dessous de mon usedrange ...).
Le problème, mon xlFilterCopy me renvoie rien ("référence non valide").
Je pense que j'ai du foiré une syntaxe quelque par mais où
Merci par avance de votre aide !
J'ai lu pas mal de post ici ou là qui m'ont bien aidé !
Pour vous résumer mon projet, il s'agit d'un onglet d'opérations qui sont classés selon des critères en colonne (type, client, etc).
L'idée est de produire à partir de cet onglet plusieurs tableaux avec des mises en forme différente. Le projet est simple mais assez complexe au final pour quelqu'un qui découvre les macros !
En clair, ma première étape, est de rechercher via un filtre élaboré les données répondant à 2 critères croisés et les coller dans un autre onglet
- soit tout en haut si l'onglet est vide
- soit 2 lignes en dessous du précédent bloc de données
Voilà le code en l'état:
Code:
If Sheets("2011.test").Cells.Find("*") Is Nothing Then
ligne_collage = Sheets("2011.test").Range("A1:M1")
Else:
plage1 = Sheets("2011.test").UsedRange.End(xlDown).Row.Offset(2, 0)
plage2 = Sheets("2011.test").Range("A65536:M65536")
ligne_collage = Range("plage1 plage2")
End If
Sheets("Données").Range("A1:M65536").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("Données").Range("P1:Q2"), CopyToRange:=ligne_collage, Unique:=False
Si c'est vide, alors, la plage pour le collage du filtre élaboré sera la première ligne.
Sinon, c'est l'intersection de deux zones (j'ai pas su faire autrement pour sélectionner 2 lignes en dessous de mon usedrange ...).
Le problème, mon xlFilterCopy me renvoie rien ("référence non valide").
Je pense que j'ai du foiré une syntaxe quelque par mais où
Merci par avance de votre aide !