XL 2010 Filtrer par formulaire et renvoyer sur une autre feuille

cgpa

XLDnaute Occasionnel
bonjour le forum,
Je cherche à filtrer à partir d'un userform d'excel toutes les ventes pour une date déterminée et renvoyer le résultat sur une autre feuille. Ce résultat servira pour un envoi par publipostage avec word (document de sortie = étiquettes). J'avais pensé au filtre avancé ou au tableau croisé mais alors c'est plus compliqué pour la présentation et le publipostage. J'ai créé le userform, mais j'ai plusieurs problèmes:
1°) le combobox1 me propose toutes les dates encodées avec les doublons. comment faire pour éviter ces doublons?
2°) je ne sais comment faire pour lui dire d'envoyer le résultat du filtre sur la feuille de destination.
Pouvez-vous m'aider? Voici mon fichier allégé. Merci beaucoup.
 

Pièces jointes

  • filtre avec formulaire.xlsm
    354.3 KB · Affichages: 5
Solution
RE

Ci-joint exemple :
  • une liste unique des dates obtenue par PowerQuery
  • une liste déroulante pour choisir la date, cellule nommée C_Date
  • une liste filtrée à utiliser pour le publipostage
Si on n'utilise pas VBA :
  1. Données, Actualiser Tout pour mettre la liste déroulante à jour
  2. Idem une fois la date choisie pour extraire
On peut remplacer 2 par une ligne de code au changement de choix

cgpa

XLDnaute Occasionnel
Bonjour

Si tu peux installer l'add on PowerQuery, intégré à Excel à partir de 2016, cela est simple et sans VBA
bonjour,
Merci Chris.
Je viens d'essayer. Cela a l'air puissant. C'est comme apprendre un nouveau programme! Mais une fois que j'ai pu filtrer, comment dois-je faire pour publiposter vers word et imprimer mes étiquettes?
1630938402579.png
 

chris

XLDnaute Barbatruc
RE

Ci-joint exemple :
  • une liste unique des dates obtenue par PowerQuery
  • une liste déroulante pour choisir la date, cellule nommée C_Date
  • une liste filtrée à utiliser pour le publipostage
Si on n'utilise pas VBA :
  1. Données, Actualiser Tout pour mettre la liste déroulante à jour
  2. Idem une fois la date choisie pour extraire
On peut remplacer 2 par une ligne de code au changement de choix
 

Pièces jointes

  • Filtre avec PQ.xlsm
    361.6 KB · Affichages: 10

cgpa

XLDnaute Occasionnel
RE

Ci-joint exemple :
  • une liste unique des dates obtenue par PowerQuery
  • une liste déroulante pour choisir la date, cellule nommée C_Date
  • une liste filtrée à utiliser pour le publipostage
Si on n'utilise pas VBA :
  1. Données, Actualiser Tout pour mettre la liste déroulante à jour
  2. Idem une fois la date choisie pour extraire
On peut remplacer 2 par une ligne de code au changement de choix
Merci beaucoup, cette solution a l'avantage d'être facile pour l'utilisateur. Il me reste à adapter sur mon fichier.
 

cgpa

XLDnaute Occasionnel
RE

Ci-joint exemple :
  • une liste unique des dates obtenue par PowerQuery
  • une liste déroulante pour choisir la date, cellule nommée C_Date
  • une liste filtrée à utiliser pour le publipostage
Si on n'utilise pas VBA :
  1. Données, Actualiser Tout pour mettre la liste déroulante à jour
  2. Idem une fois la date choisie pour extraire
On peut remplacer 2 par une ligne de code au changement de choix
je cherche à comprendre la mécanique. J'ai compris que vous aviez nommé une plage C_Date et Choix_Date. Par contre je ne comprends pas comment le fait d'appuyer sur "actualiser tout" en Données fait apparaitre le résultat du filtre sur la page "prépa étiquette". Comment avez-vous fait?
 

chris

XLDnaute Barbatruc
RE

La requête qui alimente le tableau de l'onglet prépa étiquette filtre la date en récupérant la valeur de C_Date
Tu peux voir l'étape filtre (les étapes des requêtes s'affichent à droite dans PowerQuery) ou le nom est utilisé.
 

Discussions similaires

Statistiques des forums

Discussions
314 491
Messages
2 110 155
Membres
110 688
dernier inscrit
hufav