OVH Cloud OVH Cloud

filtres elaborés et macro

13 réponses
Avatar
carinecb
Bonjour
je sollicite votre aide car je n'ai pas trouve parmi toutes les questions et
les reponses existantes ,une reponse a mon pb:
j'ai une feuille "Matrice" qui contient une liste de Service, Filiere et
Postes (dont voici le debut
SEE CONDUITE Agent conduite
SEE CONDUITE Agent conduite
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation

une feuille Service qui me permet de nommer les listes de Services, Filieres
et les postes
Je voudrais pouvoir recuperer les listes de mes entites a partir de la
feuille Matrice en utilisant les filtres elabores.
Mon pb est que lorsque je l'utilise a partir de la feuille cela fonctionne,
mais a partir du code il y a une erreur d'execution
voici une partie de mon code:
Range("table").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("A1"
), Unique:=True
avec "table" une plage nommée et pas de criteres car je veut extraire toutes
les valeurs sans doublons.

Je vous remercie d'avance de l'aide que vous pourrais m'apportée

10 réponses

1 2
Avatar
Yvan
Bonjour Carine.

Désolé Carine! On voudrait bien t'aider, mais sans savoir ce qui est défini par
"table", la feuille "Matrice"(peut être celle dont on a un extrait), ni quelle est la
nature ou le libellé de l'erreur d'execution, il est difficile de comprendre le
problème. Tes "entités", c'est les lignes de ton tableau? Tu connais bien ton
classeur, pas nous! Si tu pouvais apporter quelques précisions ou mettre ton classeur
à disposition sur www.cjoint.com alors on pourrait certainement te donner un petit
coup de main.

Donne nous bien les éléments, on va s'en occuper, promis!

A tout à l'heure.

Yvan

"carinecb" a écrit dans le message de news:

| Bonjour
| je sollicite votre aide car je n'ai pas trouve parmi toutes les questions et
| les reponses existantes ,une reponse a mon pb:
| j'ai une feuille "Matrice" qui contient une liste de Service, Filiere et
| Postes (dont voici le debut
| SEE CONDUITE Agent conduite
| SEE CONDUITE Agent conduite
| SEE CONDUITE Conducteur installation
| SEE CONDUITE Conducteur installation
| SEE CONDUITE Conducteur installation
|
| une feuille Service qui me permet de nommer les listes de Services, Filieres
| et les postes
| Je voudrais pouvoir recuperer les listes de mes entites a partir de la
| feuille Matrice en utilisant les filtres elabores.
| Mon pb est que lorsque je l'utilise a partir de la feuille cela fonctionne,
| mais a partir du code il y a une erreur d'execution
| voici une partie de mon code:
| Range("table").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("A1"
| ), Unique:=True
| avec "table" une plage nommée et pas de criteres car je veut extraire toutes
| les valeurs sans doublons.
|
| Je vous remercie d'avance de l'aide que vous pourrais m'apportée
|
Avatar
FxM
Bonjour Carine,

Je voudrais pouvoir recuperer les listes de mes entites a partir de la
feuille Matrice en utilisant les filtres elabores.


Les filtres élaborés d'Excel ne peuvent envoyer les résultats que sur la
même feuille et pas sur une autre.

Si tu peux installer une macro complémentaire (gratuite en l'occurence),
il y a la fonction =valeurs.uniques(...) dans morefun créée par notre
chef à plumes, voir http://xcell05.free.fr
Lien direct -> http://xcell05.free.fr/downloads/Morefun.zip

usage :
sélectionne ta zone d'arrivée
tapes (ou choisis dans insertion | fonction) =valeurs.uniques(
sélectionne ta zone de départ
le second argument est 0 pour un tri décroissant ou 1 pour une sortie
croissante.
Valide par ctrl-maj-entree.
C'est fait et ca se met à jour tout seul dès que tu ajoutes/retires une
valeur.

Si tu tiens à macroter le truc, il faudrait nous fournir un exemple de
données plus complet.

@+
FxM




Bonjour
je sollicite votre aide car je n'ai pas trouve parmi toutes les questions et
les reponses existantes ,une reponse a mon pb:
j'ai une feuille "Matrice" qui contient une liste de Service, Filiere et
Postes (dont voici le debut
SEE CONDUITE Agent conduite
SEE CONDUITE Agent conduite
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation

une feuille Service qui me permet de nommer les listes de Services, Filieres
et les postes
Je voudrais pouvoir recuperer les listes de mes entites a partir de la
feuille Matrice en utilisant les filtres elabores.
Mon pb est que lorsque je l'utilise a partir de la feuille cela fonctionne,
mais a partir du code il y a une erreur d'execution
voici une partie de mon code:
Range("table").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("A1"
), Unique:=True
avec "table" une plage nommée et pas de criteres car je veut extraire toutes
les valeurs sans doublons.

Je vous remercie d'avance de l'aide que vous pourrais m'apportée



Avatar
carinecb
Merci bq de t'interresser a mon pb, j'y suis depuis ce matin et rien ne
marche :((
3 feuilles sont reellement utilisees:
Matrice qui contient toutle detail des postes et ce sont ces données que
j'ai nommée "table"
Grille est la feuille qui permet la saisie du poste et des criteres
Service et filiere est la feuille sur laquelle je met toutes les petites
listes qui servent a alimenter ma feuille grille.
J'essaye de refaire mes listes a partir de la feuille matrice pour que ce
fichier se mette a jour automatiquement.

Merci d'avance de consacrer un peu de temps a mon pb
Bon courage

http://cjoint.com/?ijrCASYfYX


Bonjour Carine.

Désolé Carine! On voudrait bien t'aider, mais sans savoir ce qui est défini par
"table", la feuille "Matrice"(peut être celle dont on a un extrait), ni quelle est la
nature ou le libellé de l'erreur d'execution, il est difficile de comprendre le
problème. Tes "entités", c'est les lignes de ton tableau? Tu connais bien ton
classeur, pas nous! Si tu pouvais apporter quelques précisions ou mettre ton classeur
à disposition sur www.cjoint.com alors on pourrait certainement te donner un petit
coup de main.

Donne nous bien les éléments, on va s'en occuper, promis!

A tout à l'heure.

Yvan

"carinecb" a écrit dans le message de news:

| Bonjour
| je sollicite votre aide car je n'ai pas trouve parmi toutes les questions et
| les reponses existantes ,une reponse a mon pb:
| j'ai une feuille "Matrice" qui contient une liste de Service, Filiere et
| Postes (dont voici le debut
| SEE CONDUITE Agent conduite
| SEE CONDUITE Agent conduite
| SEE CONDUITE Conducteur installation
| SEE CONDUITE Conducteur installation
| SEE CONDUITE Conducteur installation
|
| une feuille Service qui me permet de nommer les listes de Services, Filieres
| et les postes
| Je voudrais pouvoir recuperer les listes de mes entites a partir de la
| feuille Matrice en utilisant les filtres elabores.
| Mon pb est que lorsque je l'utilise a partir de la feuille cela fonctionne,
| mais a partir du code il y a une erreur d'execution
| voici une partie de mon code:
| Range("table").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("A1"
| ), Unique:=True
| avec "table" une plage nommée et pas de criteres car je veut extraire toutes
| les valeurs sans doublons.
|
| Je vous remercie d'avance de l'aide que vous pourrais m'apportée
|





Avatar
AV
Les filtres élaborés d'Excel ne peuvent envoyer les résultats que sur la
même feuille et pas sur une autre.


Ha que nenni !
Il suffit de démarrer la procédure à partir de la feuille destination pour que
tout baigne !
On peut parfaitement avoir la base de données sur une feuille, la zone de
critère sur une autre et extraire sur une 3°

AV pour le smilblick

Avatar
FxM
Les filtres élaborés d'Excel ne peuvent envoyer les résultats que sur la
même feuille et pas sur une autre.



Ha que nenni !
Il suffit de démarrer la procédure à partir de la feuille destination pour que
tout baigne !
On peut parfaitement avoir la base de données sur une feuille, la zone de
critère sur une autre et extraire sur une 3°

AV pour le smilblick



Mais euuuuuhh ! Ce n'est pas marqué dans l'aideeuuuuhh.

OK, je sors :o)
FxM


Avatar
Yvan
OK Carine!

Je ne suis pas encore tout à fait sûr, mais je crois que j'ai ENFIN compris
le problème.


D'abord bravo pour ton classeur. On sent qu'il y a déjà plusieurs heures de
boulot et quelques gouttes de sueur derrière çà.

Le problème viendrait de là:

*****************
avec "table" une plage nommée et pas de criteres car je veut extraire
toutes
les valeurs sans doublons.
*****************


Si tu veux filtrer, il te faut une zone de critères, voyons!
Je me suis donc permis d'en insérer une dans le classeur modifié que je te
renvoie.

Si tu ne veux pas de doublon, tu fixes l'option Unique à True, point final.

Petit +: Je l'ai mis dans le code de la feuille Matrice, dans la procédure
Worksheet_Change. Comme çà, dés que tu modifie une cellule de la ligne 2, le
filtre se déclenche.

Ton classeur modifié: http://cjoint.com/?ikoiCQ4EK1

Essaie de saisir en C2, dans la feuille Matrice les expressions suivantes:

exp (pas de ligne sélectionnée)
*exp (là il y en a)
tu fais SUPPR pour effacer
et tu recommences!

Tu essaies ensuite de combiner plusieurs critères en les renseignant
successivement.

J'espère avoir bien compris le problème initial. Sinon dis-moi, et de toute
manière, ceci te servira bien un jour ou l'autre

Amicalement

Yvan

----- Original Message -----
From: "carinecb"
Newsgroups: microsoft.public.fr.excel
Sent: Tuesday, August 09, 2005 11:18 AM
Subject: filtres elaborés et macro


Bonjour
je sollicite votre aide car je n'ai pas trouve parmi toutes les questions
et
les reponses existantes ,une reponse a mon pb:
j'ai une feuille "Matrice" qui contient une liste de Service, Filiere et
Postes (dont voici le debut
SEE CONDUITE Agent conduite
SEE CONDUITE Agent conduite
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation

une feuille Service qui me permet de nommer les listes de Services,
Filieres
et les postes
Je voudrais pouvoir recuperer les listes de mes entites a partir de la
feuille Matrice en utilisant les filtres elabores.
Mon pb est que lorsque je l'utilise a partir de la feuille cela
fonctionne,
mais a partir du code il y a une erreur d'execution
voici une partie de mon code:
Range("table").AdvancedFilter Action:=xlFilterCopy,
CopyToRange:=Range("A1"
), Unique:=True
avec "table" une plage nommée et pas de criteres car je veut extraire
toutes
les valeurs sans doublons.

Je vous remercie d'avance de l'aide que vous pourrais m'apportée



Avatar
AV
Si tu veux filtrer, il te faut une zone de critères, voyons!


Absolument pas (s'il s'agit simplement de l'extraction sans doublons)

AV pour le smilblick

Avatar
Yvan
OK AV.
Si tu le dis, je te crois.

Mais il y a quelque chose qui m'échappe.

Comment demander à Excel de filtrer des données sans lui dire lesquelles?

Ou alors cette procédure sert uniquement à filtrer les doublons!

Si c'est le cas, je l'ignorais.
Mais alors où est l'erreur de Carine sachant que sa procèdure ne fonctionne pas et
que la mienne oui. ???

Dans l'attente de tes lumières

Yvan
Avatar
AV
Comment demander à Excel de filtrer des données sans lui dire lesquelles?


Il faut évidemment lui "dire" quelle est la plage à examiner mais nul besoin
d'indiquer une zone de critères pour filtrer en place ou extraire sans doublons
ailleurs
C'est une fonctionnalité "intégrée" au filtre élaboré mais ça je pense que te le
savais déjà

Mais alors où est l'erreur de Carine sachant que sa procèdure ne fonctionne
pas et

que la mienne oui. ???


Ben j'ai pas du tout régardé les questions/solutions !
Je me suis contenté de réagir à ta remarque (zone de critères) comme je l'ai
fait ce même fil à propos de la possibilité d'extraire ailleurs et de... etc...

AV

Avatar
carinecb
Merci bq d'avoir etudie mon classeur, effectivemeent ca fait qq jours que je
suis dessus. Ce forum m'aide pour avancer car je debute.
Le code sur lequel je bloque est ds la feuille1 (services et filieres)

Ma zone de critère se trouve en R1:S2 (desolee, j'avais oublie de le signaler)
Elle doit servir pour mettre à jour toutes mes listes de cette feuille.
J'ai commence a ecrire le code mais comme rien ne focntionnait j'ai tout
coté au fur et a mesure. Je reprend ca aujourd'hui.

Donc pur filtrer les services à partir de la feuille "Matrice" et pur les
exporter sur la feuille 3serivvices et filieres", j'ai enregistré le filtre
elabore et en selectionnant le critere service et rien dessus, il me donne le
code de la macro9.
et lorsque je lance ce code ca ne fonctionne pas.
Je me demandait si cela ne provenait pas de la declaration de ma zone "table".

Faut il que je la definisse a partir de VB?

Ou bien est que VB ne reconnait pas le filtrage elabore sur une autre
feuille ?

bon remue meninge
a bientot


OK Carine!

Je ne suis pas encore tout à fait sûr, mais je crois que j'ai ENFIN compris
le problème.


D'abord bravo pour ton classeur. On sent qu'il y a déjà plusieurs heures de
boulot et quelques gouttes de sueur derrière çà.

Le problème viendrait de là:

*****************
avec "table" une plage nommée et pas de criteres car je veut extraire
toutes
les valeurs sans doublons.
*****************


Si tu veux filtrer, il te faut une zone de critères, voyons!
Je me suis donc permis d'en insérer une dans le classeur modifié que je te
renvoie.

Si tu ne veux pas de doublon, tu fixes l'option Unique à True, point final.

Petit +: Je l'ai mis dans le code de la feuille Matrice, dans la procédure
Worksheet_Change. Comme çà, dés que tu modifie une cellule de la ligne 2, le
filtre se déclenche.

Ton classeur modifié: http://cjoint.com/?ikoiCQ4EK1

Essaie de saisir en C2, dans la feuille Matrice les expressions suivantes:

exp (pas de ligne sélectionnée)
*exp (là il y en a)
tu fais SUPPR pour effacer
et tu recommences!

Tu essaies ensuite de combiner plusieurs critères en les renseignant
successivement.

J'espère avoir bien compris le problème initial. Sinon dis-moi, et de toute
manière, ceci te servira bien un jour ou l'autre

Amicalement

Yvan

----- Original Message -----
From: "carinecb"
Newsgroups: microsoft.public.fr.excel
Sent: Tuesday, August 09, 2005 11:18 AM
Subject: filtres elaborés et macro


Bonjour
je sollicite votre aide car je n'ai pas trouve parmi toutes les questions
et
les reponses existantes ,une reponse a mon pb:
j'ai une feuille "Matrice" qui contient une liste de Service, Filiere et
Postes (dont voici le debut
SEE CONDUITE Agent conduite
SEE CONDUITE Agent conduite
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation
SEE CONDUITE Conducteur installation

une feuille Service qui me permet de nommer les listes de Services,
Filieres
et les postes
Je voudrais pouvoir recuperer les listes de mes entites a partir de la
feuille Matrice en utilisant les filtres elabores.
Mon pb est que lorsque je l'utilise a partir de la feuille cela
fonctionne,
mais a partir du code il y a une erreur d'execution
voici une partie de mon code:
Range("table").AdvancedFilter Action:=xlFilterCopy,
CopyToRange:=Range("A1"
), Unique:=True
avec "table" une plage nommée et pas de criteres car je veut extraire
toutes
les valeurs sans doublons.

Je vous remercie d'avance de l'aide que vous pourrais m'apportée








1 2