Filtre elaboré dynamique

Le
BV
Bonjour à tous et encore merci à FFO et LSTEPH pour leur réponses à
mon post précédent

Je souhaiterais procéder à un filtre élaboré dont les plages de
critères et la cellule à partir de laquelle les données seraient
extraites seraient variables :
Si joint un bout de code pour vous expliquer :

j'ai d'abord saisi ce code pour récupérer autoamtiquement la zone de
critères en fonction du nombre d'éléments contenus dans le champ :
fonctionne !
Sub autoselection()

'selection auto de la zone de critères
Range("A7").Select
Range(selection, selection.End(xlDown)).Select
End Sub


j'ai ensuite ce code pour placer automatiquement la sélection (copier
dans), 5 lignes après ma zone de critères

Sub position()
'position auto sur la dernière cellule vide + 4 lignes
Cells(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1).Select
End Sub

et enfin ce code pour générer l'extraction (fonctionne en manu)
et c'est là où je bloque, je souhaiterais remplacer la zone de
critères et la zone de copie
par mes deux variables crées au dessus

Sub elabore()
Range("C28").Select
Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
CriteriaRange:= _
Range("A7:A26"), CopyToRange:=Range("A33"), Unique:=True
ActiveWindow.SmallScroll Down:=3
End Sub


principe, quelque soient le nombre de variables dans ma zone de
critères (15, 5 ou 20)
je puisse m'en servir comme sélection et générer mon extraction 5
lignes en dessous


Merci d'avance pour vos conseils

BV
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LSteph
Le #19776191
Bonjour,

Utilise une plage nommée ou une variable
que ce soit pour Critere ou Extraction
et surtout enlève ces selection et select de ton code et utilise
l'objet ou son adresse.


@+

--
lSteph

On 17 juil, 17:09, BV
Bonjour à tous et encore merci à FFO et LSTEPH pour leur réponses à
mon post précédent

Je souhaiterais procéder à un filtre élaboré dont les plages de
critères et la cellule à partir de laquelle les données seraient
extraites seraient variables :
Si joint un bout de code pour vous expliquer :

j'ai d'abord saisi ce code pour récupérer autoamtiquement la zone de
critères en fonction du nombre d'éléments contenus dans le champ :
fonctionne !
Sub autoselection()

'selection auto de la zone de critères
    Range("A7").Select
    Range(selection, selection.End(xlDown)).Select
End Sub

j'ai ensuite ce code pour placer automatiquement la sélection (copier
dans), 5 lignes après ma zone de critères

Sub position()
'position auto sur la dernière cellule vide + 4 lignes
Cells(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1).Select
End Sub

et enfin ce code pour générer l'extraction (fonctionne en manu)
et c'est là où je bloque, je souhaiterais remplacer la zone de
critères et la zone de copie
par mes deux variables crées au dessus

Sub elabore()
    Range("C28").Select
    Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
CriteriaRange:= _
        Range("A7:A26"), CopyToRange:=Range("A33"), Unique:=T rue
    ActiveWindow.SmallScroll Down:=3
End Sub

principe, quelque soient le nombre de variables dans ma zone de
critères (15, 5 ou 20)
je puisse m'en servir comme sélection et générer mon extraction 5
lignes en dessous

Merci d'avance pour vos conseils

BV


FFO
Le #19776361
Salut à toi

J'essaierai ainsi :

Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
CriteriaRange:= _
Range("A7", Range("A7").End(xlDown)),
CopyToRange:Îlls(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1),
Unique:=True
ActiveWindow.SmallScroll Down:=3


A tester !!!!

Dois moi des nouvelles !!!!!!
BV
Le #19776341
On 17 juil, 17:24, LSteph
Bonjour,

Utilise une plage nommée ou une variable
que ce soit pour Critere ou Extraction
et surtout enlève ces selection et select de ton code et utilise
l'objet ou son adresse.

@+

--
lSteph

On 17 juil, 17:09, BV


> Bonjour à tous et encore merci à FFO et LSTEPH pour leur réponses à
> mon post précédent

> Je souhaiterais procéder à un filtre élaboré dont les plages de
> critères et la cellule à partir de laquelle les données seraient
> extraites seraient variables :
> Si joint un bout de code pour vous expliquer :

> j'ai d'abord saisi ce code pour récupérer autoamtiquement la zone d e
> critères en fonction du nombre d'éléments contenus dans le champ :
> fonctionne !
> Sub autoselection()

> 'selection auto de la zone de critères
>     Range("A7").Select
>     Range(selection, selection.End(xlDown)).Select
> End Sub

> j'ai ensuite ce code pour placer automatiquement la sélection (copier
> dans), 5 lignes après ma zone de critères

> Sub position()
> 'position auto sur la dernière cellule vide + 4 lignes
> Cells(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1).Select
> End Sub

> et enfin ce code pour générer l'extraction (fonctionne en manu)
> et c'est là où je bloque, je souhaiterais remplacer la zone de
> critères et la zone de copie
> par mes deux variables crées au dessus

> Sub elabore()
>     Range("C28").Select
>     Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
> CriteriaRange:= _
>         Range("A7:A26"), CopyToRange:=Range("A33"), Unique: =True
>     ActiveWindow.SmallScroll Down:=3
> End Sub

> principe, quelque soient le nombre de variables dans ma zone de
> critères (15, 5 ou 20)
> je puisse m'en servir comme sélection et générer mon extraction 5
> lignes en dessous

> Merci d'avance pour vos conseils

> BV- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



j'avais pensé à déclarer des plages nommées mais le pbm c'est qu'el les
changent à chaque fois
elles ne sont pas fixes
JB
Le #19776331
Bonjour,

Nom de champ dynamique
Critere ÞCALER(Feuil1!$E$1;;;MAX(SI($E$2:$F$8<>"";LIGNE($E$2:$F$8);
0));2)

http://cjoint.com/?hrrPVUtKeN

JB
http://boisgontierjacques.free.fr
On 17 juil, 17:09, BV
Bonjour à tous et encore merci à FFO et LSTEPH pour leur réponses à
mon post précédent

Je souhaiterais procéder à un filtre élaboré dont les plages de
critères et la cellule à partir de laquelle les données seraient
extraites seraient variables :
Si joint un bout de code pour vous expliquer :

j'ai d'abord saisi ce code pour récupérer autoamtiquement la zone de
critères en fonction du nombre d'éléments contenus dans le champ :
fonctionne !
Sub autoselection()

'selection auto de la zone de critères
    Range("A7").Select
    Range(selection, selection.End(xlDown)).Select
End Sub

j'ai ensuite ce code pour placer automatiquement la sélection (copier
dans), 5 lignes après ma zone de critères

Sub position()
'position auto sur la dernière cellule vide + 4 lignes
Cells(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1).Select
End Sub

et enfin ce code pour générer l'extraction (fonctionne en manu)
et c'est là où je bloque, je souhaiterais remplacer la zone de
critères et la zone de copie
par mes deux variables crées au dessus

Sub elabore()
    Range("C28").Select
    Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
CriteriaRange:= _
        Range("A7:A26"), CopyToRange:=Range("A33"), Unique:=T rue
    ActiveWindow.SmallScroll Down:=3
End Sub

principe, quelque soient le nombre de variables dans ma zone de
critères (15, 5 ou 20)
je puisse m'en servir comme sélection et générer mon extraction 5
lignes en dessous

Merci d'avance pour vos conseils

BV


LSteph
Le #19776611
...en supposant ici qu'il n'y a rien entre la zone d'extract
G13:H13et le critère G13 à ..n

Sub extrait()
Dim myr As Range
Set myr = Range("G1:G" & [G12].End(xlUp).Row)

Range("DatasC").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=myr, CopyToRange:=Range("G13:H13"), Unique:=True

End Sub

'lSteph

On 17 juil, 17:36, BV
On 17 juil, 17:24, LSteph




> Bonjour,

> Utilise une plage nommée ou une variable
> que ce soit pour Critere ou Extraction
> et surtout enlève ces selection et select de ton code et utilise
> l'objet ou son adresse.

> @+

> --
> lSteph

> On 17 juil, 17:09, BV
> > Bonjour à tous et encore merci à FFO et LSTEPH pour leur répons es à
> > mon post précédent

> > Je souhaiterais procéder à un filtre élaboré dont les plages de
> > critères et la cellule à partir de laquelle les données seraien t
> > extraites seraient variables :
> > Si joint un bout de code pour vous expliquer :

> > j'ai d'abord saisi ce code pour récupérer autoamtiquement la zone de
> > critères en fonction du nombre d'éléments contenus dans le cham p :
> > fonctionne !
> > Sub autoselection()

> > 'selection auto de la zone de critères
> >     Range("A7").Select
> >     Range(selection, selection.End(xlDown)).Select
> > End Sub

> > j'ai ensuite ce code pour placer automatiquement la sélection (copi er
> > dans), 5 lignes après ma zone de critères

> > Sub position()
> > 'position auto sur la dernière cellule vide + 4 lignes
> > Cells(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1).Select
> > End Sub

> > et enfin ce code pour générer l'extraction (fonctionne en manu)
> > et c'est là où je bloque, je souhaiterais remplacer la zone de
> > critères et la zone de copie
> > par mes deux variables crées au dessus

> > Sub elabore()
> >     Range("C28").Select
> >     Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
> > CriteriaRange:= _
> >         Range("A7:A26"), CopyToRange:=Range("A33"), Unique: =True
> >     ActiveWindow.SmallScroll Down:=3
> > End Sub

> > principe, quelque soient le nombre de variables dans ma zone de
> > critères (15, 5 ou 20)
> > je puisse m'en servir comme sélection et générer mon extraction 5
> > lignes en dessous

> > Merci d'avance pour vos conseils

> > BV- Masquer le texte des messages précédents -

> - Afficher le texte des messages précédents -

j'avais pensé à déclarer des plages nommées mais le pbm c'est qu' elles
changent à chaque fois
elles ne sont pas fixes- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


BV
Le #19778181
On 17 juil, 17:33, FFO
Salut à toi

J'essaierai ainsi :

Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCopy,
CriteriaRange:= _
Range("A7", Range("A7").End(xlDown)),
CopyToRange:Îlls(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1),
Unique:=True
ActiveWindow.SmallScroll Down:=3

A tester !!!!

Dois moi des nouvelles !!!!!!



GENIAL !!!!!!!!!
en fait j'étais parti sur quelque chose de similaire, mais je m'étais
trompé au niveau du 1er range
merci beaucoup
BV
Le #19778171
On 17 juil, 18:01, LSteph
...en supposant ici  qu'il n'y a rien entre la zone d'extract
G13:H13et le critère G13 à ..n

Sub extrait()
Dim myr As Range
Set myr = Range("G1:G" & [G12].End(xlUp).Row)

Range("DatasC").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=myr, CopyToRange:=Range("G13:H13"), Unique:=True

End Sub

   'lSteph

On 17 juil, 17:36, BV
> On 17 juil, 17:24, LSteph
> > Bonjour,

> > Utilise une plage nommée ou une variable
> > que ce soit pour Critere ou Extraction
> > et surtout enlève ces selection et select de ton code et utilise
> > l'objet ou son adresse.

> > @+

> > --
> > lSteph

> > On 17 juil, 17:09, BV
> > > Bonjour à tous et encore merci à FFO et LSTEPH pour leur répo nses à
> > > mon post précédent

> > > Je souhaiterais procéder à un filtre élaboré dont les plage s de
> > > critères et la cellule à partir de laquelle les données serai ent
> > > extraites seraient variables :
> > > Si joint un bout de code pour vous expliquer :

> > > j'ai d'abord saisi ce code pour récupérer autoamtiquement la zo ne de
> > > critères en fonction du nombre d'éléments contenus dans le ch amp :
> > > fonctionne !
> > > Sub autoselection()

> > > 'selection auto de la zone de critères
> > >     Range("A7").Select
> > >     Range(selection, selection.End(xlDown)).Select
> > > End Sub

> > > j'ai ensuite ce code pour placer automatiquement la sélection (co pier
> > > dans), 5 lignes après ma zone de critères

> > > Sub position()
> > > 'position auto sur la dernière cellule vide + 4 lignes
> > > Cells(ActiveSheet.Cells(7, 1).End(xlDown).Row + 5, 1).Select
> > > End Sub

> > > et enfin ce code pour générer l'extraction (fonctionne en manu)
> > > et c'est là où je bloque, je souhaiterais remplacer la zone de
> > > critères et la zone de copie
> > > par mes deux variables crées au dessus

> > > Sub elabore()
> > >     Range("C28").Select
> > >     Range("DATA_CANDIDAT").AdvancedFilter Action:=xlFilterCop y,
> > > CriteriaRange:= _
> > >         Range("A7:A26"), CopyToRange:=Range("A33"), Uniqu e:=True
> > >     ActiveWindow.SmallScroll Down:=3
> > > End Sub

> > > principe, quelque soient le nombre de variables dans ma zone de
> > > critères (15, 5 ou 20)
> > > je puisse m'en servir comme sélection et générer mon extracti on 5
> > > lignes en dessous

> > > Merci d'avance pour vos conseils

> > > BV- Masquer le texte des messages précédents -

> > - Afficher le texte des messages précédents -

> j'avais pensé à déclarer des plages nommées mais le pbm c'est q u'elles
> changent à chaque fois
> elles ne sont pas fixes- Masquer le texte des messages précédents -

> - Afficher le texte des messages précédents -



Merci à tous pour vos réponses précieuses
Publicité
Poster une réponse
Anonyme