Filtrer selon date et exporter

Bonjour,

Je bloque sur un travail de filtre.

J'ai une feuille "JOURNAL RECETTES" qui est renseignée sur toute l'année( via userform).

Je voudrais exporté les données de ce journal sur plusieurs feuilles nommées"JOURNAL RECETTE SEPTEMBRE" , "JOURNAL RECETTES OCTOBRE", ....."JOURNAL RECETTES AOUT". Ce sont 12 onglets correspondants aux différents mois de l'année.

Les informations exportées devraient être les opérations effectuées durant le mois en question.

Je joins un fichier test pour plus d'informations.

Merci d'avance.

je vous propose une solution simple non automatisé, filtre, copier, coller

maintenant, si vous souhaiter automatiser par une macro, dites moi le et préciser vos besoins

Bonjour gullaud , le forum,

Effectivement mon besoin est d'automatiser la procédure par VBA ou un formule car ce sont des opérations qui seront lancées à partir d'un userform, l'utilisateur n'a pas accès direct à la feuille.

Donc l’idéal c'est de faire un filtre sur les dates, et en fonction du mois copier et coller les lignes correspondantes aux onglets correspondants.

Merci pour toute aide ou orientation.

dans le fichier joint, que vous avez mis il n'y a pas la userform

il me semble que si la saisie se fait dans une userform, on peut ventiler en même temps

soit la userform est faite, vous me la faites parvenir et je peux regarder la suite

ou je fais la userform qui fait la saisie et la ventilation

je reste à votre disposition

Bonsoir gullaud, le forum,

Effectivement j'ai enlevé les Userform de mon fichier parce qu'au fait c'est un fichier très volumineux et qui contient une dizaine d'userform.

Finalement j'ai pu progresser un peu grâce à un filtre que j'ai trouvé sur le forum (Solution de Banzai64)

Maintenant , grâce à ce filtre que j'ai adapté aux besoins de chaque feuille ( donc de chaque mois) ,je peux avoir les données nécessaires aux journaux des différents mois. Mais ces données sont sur la feuille principale "JOURNAL RECETTES" ce qui reste à faire c'est trouver un bon moyen pour copier et coller ces données au bon endroit. J'ai essayé avec l'enregistrement de macro mais cela ne marche pas bien. Je joint mon fichier avec les dernières modifications.

J’espère que quelqu'un aurait une proposition.

Merci d'avance

j'ai modifié complétement la programmation, je ne filtre pas la feuille "journal recettes"

pour démarrer aller sur la 1° feuille début, cliquer sur le bouton, une userform apparaît, on choisit la période dans une liste déroulante

et la feuille filtrée apparaît, pour un autre choix cliquer sur retour

391-filtre-export.xlsm (107.53 Ko)

Ce qui pourrait également être suggéré c'est de créer un TCD sur base de votre BDD (qui elle est alimentée par vos userforms) et de copier ce tableau dans chaque feuille (mois). Appliquer ensuite un filtre sur chaque feuille pour ne garder que le mois en question.

Prévoir ensuite une petite macro qui rafraîchit tous les TCD liés à ta BDD principale. (j'avais lancé un sujet similaire sur l'update des TCD ici sur le forum mais je n'arrive pas à retomber dessus)

Bonjour

D'abord je vous remercie pour le temps et les efforts que vous avez consacré à mon sujet.

La solution que vous avait proposé répond parfaitement à mes besoins, et je voudrais l'adapter à plusieurs projets.

Je n'ai pas encore eu le temps de consulter le site que vous m'avez proposé. Si je peux abuser de votre gentillesse je vous demanderai de me citer les grandes lignes des différentes étapes pour reconstituer ce travail, par ce que quand vous l'avez dit vous avez tous repris depuis le début même la configuration de tableau.

Merci beaucoup.

je vous envoie 4 fichiers : 1 word et 3 excel

attention les liens du fichier word ne fonctionneront pas, depuis le fichier word vous trouver le noms du fichier excel associé

Bonjour gullaud,

Je viens de me rendre compte que j'avais vraiment une compréhension (et manipulation) différente des tableaux excel, j'ai souvent manipulé des fichiers avec des formules de tous genres mais je ne suis jamais tombé sur quelque chose d'aussi bien structurée. Vous venez de m’éclairer sur une meilleur façon d'aborder excel. Merci beaucoup.

Les fichiers que vous avez envoyé donnent l’essentiel pour comprendre la conception. D’ailleurs je vais m'y mettre pour mieux comprendre ce volet.

Pour ce qui est de la programmation, je vous avoue que je n'ai pas compris pourquoi vous avez eu recours à une listBox et qui affiche une date au lieu du nom du mois concerné.

Je vous demanderais également quelques explications à propos des lignes de code utilisés. Je demande peut-être beaucoup de chose, c'est que je trouve votre façon de faire les choses très différente et intéressante.

Merci d'avance.

Bonsoir gullaud,

Je viens de terminer la restructuration de mes tableaux avec une adaptation des codes.

Malheureusement le code bug sur la macro: Sub efface_tableau(t As String) précisément sur: Range(t).Select

Je n'arrive pas à détecter d'ou vient le problème et ce que j'ai raté dans l'adaptation. Votre aide serait précieuse.

Merci

explication sur date au lieu de mois :

je suis parti de votre liste (periode pour moi) sept-16, oct-16, .........., août_17, je pensais que cela avais une importance pour vous, en fait dans votre fichier affichait : sept-16 , mais la cellule contenait 01/09/2016, donc je pensais que l'année avait une importance,

ma liste déroulante s'appuyant sur cette date, faisait donc apparaitre le contenu de la cellule c'est à dire 01/09/16, maintenant si c'est nécessaire je peux ne faire apparaître que le mois

procédure : efface_tableau

difficile de répondre, sans voir le fichier que vous avez modifié, retournez-moi votre nouveau fichier en m'indiquant dans quelles circonstances la procédure bloque

cordialement en attendant de vous lire

Bonjour gullaud,

Le fichier sur lequel je travaille va servir à la gestion administrative et comptable. je l'ai crée de telle manière que toute information passe par userform. Je viens de supprimer un bon nombre de feuilles et d'userforms de l'original et je n'ai gardé que les feuilles qui sont en liaison avec le chapitre du journal recettes.

J'ai gardé la BDD car c'est là d'ou viennent les infos de l'Usf_Recettes et quand je valide une opération elle va sur le journal recettes d'une part et sur la BDD colonnes du mois correspondants d'autre part.

Par ailleurs j'ai garder Usf RECHERCHE qui est au fait une liste box avec des filtres sur quelques colonnes. L'idée c'est d'ajouter une comboBox contenant les noms des mois et de filtrer sur la colonne date de telle manière à avoir le journal de ce mois dans la listBox puis faire un export de ces données dans une autre feuille " Résultat filtre" cette partie ne marche pas encore.

Je pense que je vous ai tous dit.

Reste une chose c'est que j'ai aussi un journal de dépenses qui est alimenté par Userform et pour lequel je voudrais faire le même travail qu'avec le journal de recettes.

Le fichier ci-joint est très allégé par rapport à l'original.

J'ai essayé de vous rapprocher au maximum des conditions réelles de mon projet. J’espère qu'on pourra trouver une bonne solution.

Merci d'avance.

34test-gestion-v25.rar (377.42 Ko)

j'ai modifier dans usr_filtre la procedure : Private Sub cmd_filtre_Click()

j'ai ajouter la procedure (en bas ) : Public Sub selection_feuille(nu As Integer)

d'où venait l'erreur :

vous aviez rajouté des feuilles au début, comme je travaillais avec le numéro de la feuille, cela ne fonctionnait plus

pour une feuille excel il y a 2 choses son étiquette qui une chaîne de carctères (ex : JOURNAL RECETTES JANVIER) et son nom d'objet (ex: janvier)

pour sélectionner une feuille 3 façons

sheets( "JOURNAL RECETTES JANVIER").select

sheets(janvier).select (nouvelle solution)

sheets(i).select (i est le numéro de la feuille, la première à gauche porte le numéro 1) (ancienne solution)

Sheets.count : donne le nombre de feuille du classeur

si vous avez d'autres problèmes n'hésitez pas à me contacter

Bonjour gullaud,

D'abord je vous remercie du fond du cœur pour l’intérêt et le réactivité que vous apportez à mon sujet. C'est vraiment très gentille de votre part.

J'ai adapté les dernières modifications à mon projet et ça marche super bien. Vous venez de m'enlevez une grosse épine. Merci

Par ailleurs j'ai remarqué que les années n'ont aucune valeurs et si on les enlève cela me rendrais énormément service car le fichier serait réutilisable pour chaque année (qui commence en septembre et se termine en août).

Une deuxième question: est-il possible d'avoir sur la listBox le nom des mois au lieu des dates ( exemple: SEPTEMBRE au lieu de 01/09/2016) cela serait mieux présentable.

Et une dernière question (j’espère que ça sera la dernière): Pour refaire le même travaille pour le journal des dépenses qui est sur le même fichier, y a-il des précautions particulières à prendre en considération.

Encore une fois merci beaucoup pour le coup de mains.

1: j'ai mis les mois, en principe ça marche

2 : je vous ai mis un fichier exemple pour voir comment je programme

<cordialement

15exemple.xlsm (31.52 Ko)

Bonjour gullaud, heureux de vous lire,

Depuis deux jours que je travaille sur le fichier pour deux objectifs: avoir le nom des mois au lieu des dates, et répliquer le même travail du journal recettes pour avoir un filtrage du journal dépenses en plusieurs journaux mensuels.

Pour les mois j'ai pu les bricoler et ça marche (mais je vois que votre solution est plus simple que la mienne et je pense que vous avez même contourné le problème lié aux années pour que le fichier soit réutilisable chaque année qui commence en septembre et se termine en août)

Le grand problème c'est que je n'arrive pas à reproduire la même chose pour créer les différents journaux de dépenses mensuels, et pourtant j'ai suivi les mêmes étapes que la dernière fois (créations des feuilles et tableaux je les ai nommer td_....... au lieu de t_,,,,,,, pour se différencier du travail fait avec les recettes)

Malheureusement, malgré des changements que j'ai apporté au niveau des codes cela ne marche pas.

Je reviens encore une fois vers vous à la recherche de votre aide précieuse.

Je joint mon fichier avec les ajouts des tableaux relatifs aux journal de dépenses.

J’espère que vous trouverez une solution car je bloque complètement.

Merci d'avance.

30test-gestion-v27.xlsm (752.83 Ko)

je vous envoie mon fichier avec dépenses faites

je trouve que votre façon de programmer est compliqué

vous ne donnez pas de mon à vos objets

ex:

vos feuilles s'appelle feuil1 le changer en nom significatif : recette_janvier

vos boutons s'appelle cmdbutton25 mettre cmd_ouvre_feuille_depense

je ne demande si vous n'auriez pas intérêt à tout reprendre en s'appuyant sur mon fichier, qui est loin d'être parfait car je ne savais au début que vous alliez aussi gérer les dépenses

j'aurais dû

ex : feuille juin l'appelé recette_juin

Bonjour gullaud,

Effectivement que mes feuilles ne sont pas nommées de manière cohérente c'est dû au fait que lorsque j'ai commencé ce projet je n'avait pratiquement aucune notion en programmation. Et comme vous dites je vais m'y mettre pour tous reprendre de manière plus précise et organisée.

Par ailleurs je viens d'adapter votre dernière proposition elle marche super bien. Je vous remercie infiniment pour les efforts que vous avez déployé pour soutenir mon projet. C’était justement la dernière étape pour donner vie à ce projet.

Juste une dernière chose: si un utilisateur non averti ne choisi pas le mois dans la listBox et appuie sur le bouton "copier filtre recette" ou "copier filtre dépense" le programme bug. Peut-être qu'il faut rajouter MsgBox d'avertissement ou une procédure de gestion d'erreur. Qu'en pensez-vous?

En attente de vous lire.

j'ai ajouter un if dans chacune des proceudures

Private Sub cmd_filtre_Click() et Private Sub cmd_filtre_depense_Click()

la valeur de Me.lst_periode.ListIndex est égal à -1 quand rien n'est sélectionné

(Me : represent le nom de la feuille)

Rechercher des sujets similaires à "filtrer date exporter"