Tâches de la semaine

Bonjour,

Je vous envoi un tableau excel ci joint, car je cherche une formule pour me re-sortir tous les légumes qui sont récoltés dans une semaine sélectionnée.

Dans mon tableau, je souhaite trouver des formules pour l’onglet « Planning hebdomadaire », dans le tableau encadré en rouge (colonnes AD:AG). J’ai mis un exemple de ce que je souhaite pour une meilleurs compréhension.

Milles merci !

7-2.Production potage_3.xlsx (3,0 Mo)

Bonjour

Ci-joint ma proposition pas avec des formules mais en VBA

Onglet « Plannning Hebdomadaire » saisis en cellule A2 une semaine
Une fois la saisie réalisé sélectionnes la cellule A12
La liste des récoltes dans cette cellule apparait

Le traitement prends les informations des semaines de récolte onglet « Tableau de production » colonne Aj/AK

Tu as mis comme indications en cellule A12 onglet « Plannning Hebdomadaire » ceci :

Donc en semaine 4 par exemple, ca devrait me sortir toutes les variétés de bettes, de choux, de poireau et de mâche. Toutes ces variétés de légumes sont récoltées en autres en semaine 4.

Or si je regarde par exemple pour les bettes colonne AJ/AK la semaine de récolte j’ai ceci :

Il est clairement indiqué de la semaine 14 à la semaine 22 bien loin de la semaine 4 que tu cites dans tes explications

Il y a quelque chose qui m’échappe

Peux tu m’expliquer ?

Sinon testes ce fichier ci-après et dis moi

Fichier de type xlsm pour le fonctionnement des macros à maintenir impérativement

7-2.Production potage_3.xlsm (667,9 Ko)

Merci pour votre retour.

Concernant l’exemple des bettes, il faut prendre en compte les colonnes AL et AM pour le début de la récolte et la fin de la récolte. J’ai oublié de préciser… Les colonnes AJ et AK servent à autre chose.
Donc par exemple, la récolte des bettes commence en semaine 42 (en année N) et se fini en semaine 14 (en année N+1). Donc la semaine 4 est bien comprise dans ces dates.

Par contre, je n’ai pas bien compris ce que vous souhaitez que je testes sur le fichier que vous m’avez envoyé… Vous n’avez pas mis votre formule VBA ?

J’ai modifier la procédure pour qu’elle prenne en compte les colonnes AL et AN au lieu des colonnes AJ et AK de l’onglet " Tableau de production"

« Par contre, je n’ai pas bien compris ce que vous souhaitez que je testes sur le fichier que vous m’avez envoyé… Vous n’avez pas mis votre formule VBA ? »

J’ai bien mis en place une procédure VBA mais il faut la tester pour contrôler quelle répond bien à tes attentes notamment la précédente n’était pas adaptée car elle ciblait les mauvaises colonnes de l’onglet " Tableau de production"

pour cela en cellule A2 en fonction du numéro de la semaine saisie vérifier en cellule A12 si le résultat est correct

Ni plus ni moins

Merci de me dire

Le nouveau fichier corrigé

7-2.Production potage_3.xlsm (668,7 Ko)

Désolé je me suis trompé sur la logique à mettre en place et donc j’ai encore modifié celle-ci

Testes plutôt cette nouvelle version je pense que là elle devrait donner un meilleur résultat

Testes et dis moi

7-2.Production potage_3.xlsm (668,3 Ko)

« vérifie en cellule A12 », vous voulez dire AD12 non ?

en tout cas, ça n’a pas l’air de fonctionner. En AD12, quelque soit le numéro de semaine que j’indique en A2, tous les légumes s’affichent sans exception…

Oui résultat en cellule AD12

« en tout cas, ça n’a pas l’air de fonctionner. En AD12, quelque soit le numéro de semaine que j’indique en A2, tous les légumes s’affichent sans exception… »

Je ne sais pas comment tu as réalisé ton test mais moi quand je mets en cellule A2 la semaine 4 comme l’exemple que tu as cité j’obtient en AD12 ceci :

soit 13 légumes bien loin trés trés loin de l’ensemble des légumes de l’onglet « Tableau de production » qui en colonne A en liste 118 :

Avec la semaine 31 :

30 légumes trés loin des 118 de la totalité

Pour moi la procédure ne ramène qu’un échantillon le tout étant de savoir si il est correct

As tu pris la toute dernière version ?

Je te la retransmets ci-après

testes à nouveau et dis moi

7-2.Production potage_3.xlsm (668,3 Ko)

En effet ça marche bien toutes mes excuses j’ai du faire une mauvaise manip… Après vérification sur la dernière version, la procédure est correct.

Par contre…

Je te t’ai pas envoyé mon fichier d’origine, car celui ci est trop volumineux pour être envoyé par ce forum. Il y a beaucoup de données et de formules ! Du coup, mon idée c’était de récupérer la formule pour la « copier coller » sur mon fichier d’origine (en l’adaptant s’il faut. En passant par la VBA, je ne peux pas recreer la procédure, je n’en ai pas les compétences…

La VBA est donc t-elle la seule solution ? Il n’y aurait pas une formule pour faire cette procédure ?

Pour moi je ne pense pas mais je ne suis pas un expert sur la question
Le problème pour celle-ci est de ramener différentes données en fonction d un critère à comparer à 2 sources dont l une peut être à prendre en considération sur 2 situations différentes année en cours ou suivante d ou la complexité
C est ce qui m a valu les quelques petits ratés avec plusieurs correctifs
De plus les données à restituer sont à lister l une en dessous de l autre
Pour toutes ces raisons je crains que VBA soit incontournable

Il y a une macro à recopier l élément principal plus une petite procédure événementielle

Soit tu ramènes tout ton fichier dans celui-ci soit tu ramènes ces 2 éléments cités ci-dessus dans ton fichier mais ce dernier doit être de type xlsm (mon fichier.xlsm)

A toi de choisir

Je préfèrerais plutôt partir sur la deuxième options, à savoir « une macro à recopier l élément principal plus une petite procédure événementielle ». Par contre, pourrais tu me guider pour cela ?
Encore merci pour ton aide.

Bonjour

Suis pas à pas les manipulations suivantes :

Fichier final à mettre en type « xlsm »

Ton fichier final ouvert fais « Accueil »/Enregistrez sous
Choisi dans la fenêtre qui vient de s’ouvrir le même répertoire ou un répertoire de ton choix puis sélectionnes le bon type comme ceci :

image

2° choix de la liste

Puis cliques sur « Enregistrer »

Le fichier final pour moi s’appelle « Classeur » à mettre en lien avec le nom de ton fichier dans les explications qui suivent

Récupères ce fichier (j’ai apporté une amélioration) :

7-2.Production potage_3.xlsm
(668,4 Ko)

Ouvres le

Tu as maintenant 2 fichiers ouverts (si d’autres le sont pour éviter des erreurs fermes les uniquement ces 2 là aucun autre)

A partir d’un de ces 2 fichiers fais la combinaison des touches du clavier alt+F11

Dans la fenêtre qui vient de s’ouvrir partie gauche sélectionnes VBAProject(ton fichier final.xlsm) pour moi VBAProject(Classeur1.xlsm)

Sur la barre du haut de la fenêtre cliques sur « Insertion » (4° choix juste avant « Format ») et choisi dans la liste « Module »

Une fenêtre à droite s’affiche vide (en dessous de « Général »)

Vas dans VBAProject(7-2.Production potage_3.xlsm) et déplies le dossier « Modules » puis cliques sur « Module1 »

A droite sous « Général » sélectionnes toutes les lignes de la première à la dernière :

soit Edition/copier ou clique droit copier ou ctrl+C

Reviens dans VBAProject(ton fichier final.xlsm) pour moi VBAProject(Classeur1.xlsm) dans Modules choisis Modules 1 par doubleclick

et cliques en haut de la fenêtre de droite sous « Général »

Fais Edition/coller ou clique droit coller ou ctrl+V

Les lignes sélectionnées sont recopiées

Bandeau du haut 3° icone : Enregistrer ou Fichier/Enregistrer(Classeur1.xlsm)

Puis reviens dans VBAProject(7-2.Production potage_3.xlsm) et doubleclick sur "Feui6(Plannning Hebdomadaire)

Même opération fenêtre de droite sélectionnes toutes les lignes sous « Worksheet » puis copier

Reviens dans VBAProject(ton Fichier final.xlsm) pour moi VBAProject(Classeur1.xlsm) doubleclick sur "Feui?(Plannning Hebdomadaire) (je ne connais pas le numéro de la feuille mais bases toi sur son nom entre parenthèse : « Plannning Hebdomadaire »)

Puis coller

Bandeau du haut 3° icone : Enregistrer ou Fichier/Enregistrer(ton Fichier final.xlsm)

Fermes l’éditeur VBA croix rouge en haut à droite

Fais des essais dans l’onglet de ton fichier final « Plannning Hebdomadaire »

Attention de ne pas modifier l’emplacement des cellules :

A2 et CD12

Pour d’autres cellules

Ne pas modifier aussi les colonnes A/B et AL/AM pour d’autres colonnes ainsi que son nom onglet « Tableau de production »

Le traitement cible ces colonnes et le nom de cet onglet pour le résultat à obtenir

Si d’aventure un jour la saisie onglet « Plannning Hebdomadaire » cellule A2 n’avait aucune action sur la cellule CD12 sur cet onglet à l’écran par la combinaison des touches alt+F8 dans la fenêtre qui s’ouvre sélectionnes dans le choix « Macro dans » l’option « Ce classeur » puis dans la fenêtre principale choisi « Traitement » et actives à droite l’icone « Exécuter »

Ainsi le traitement s’effectuera et résoudra la situation pour qu’à la prochaine saisie de la cellule « A2 » il s’exécute automatiquement

Si tu as des difficultés je suis à ta disposition

Fais moi un retour

Hello ! Merci pour ce retour très détaillé. J’ai testé de faire toutes les manip, et tout est très clair.

Par contre ça ne marche pas… Mais je pense avoir l’explication ! Pendant que tu trouvais la solution pour moi, j’ai modifié mon fichier d’origine, et notamment la partie qui nous interresse. La partie récolte n’est plus au même endroit ! Désolé…

J’ai quand même copier coller les formules comme tu m’as dis. J’ai même tenté de changer la cellule AD12 je l’ai vu marqué une seule fois. J’ai mis C65 là où se trouve la nouvelle cellule des récolte, là où je veux mon résultat. Mais non ça ne marche pas…

J’ai surement fait une erreur :frowning:

Pour info je suis sur mac, je ne sais pas si ça change quelque chose.

Autre chose, si tu prend encore le temps de regarder (milles merci encore une fois !), au niveau du résultat de la formule VBA, j’aimerais que ça me sorte uniquement le nom des cultivar (ou variétés ça veut dire la même chose), et nom pas le nom du légume.

Par exemple pour :
_ Bette-Verte à carde blanche S/P

J’aimerais seulement :
Verte à carde blanche S/P

C’est possible ?

De plus, est-il possible d’avoir un résultat par ligne ? Plutôt que tous les résultats dans une seule cellule ? Une ligne par variété trouvée ?

Je te joints mon nouveau fichier (qui n’est pas l’original car toujours trop volumineux. Mais cette fois ce fichier simplifié, je ne le modifierais pas tant que j’ai pas ton retour :wink:

7-2.Production potager-VBA-copie.xlsm (594,5 Ko)

Pour info, j’ai uniquement changé la partie « planning hebdomadaire » je crois, la partie Tableau de production elle n’a pas changée.

[quote=« FFO, post:11, topic:8551 »]
Si d’aventure un jour la saisie onglet « Plannning Hebdomadaire » cellule A2 n’avait aucune action sur la cellule CD12 sur cet onglet à l’écran par la combinaison des touches alt+F8 dans la fenêtre qui s’ouvre sélectionnes dans le choix « Macro dans » l’option « Ce classeur » puis dans la fenêtre principale choisi « Traitement » et actives à droite l’icone « Exécuter »
[/quote] alt+F8 ça marche aussi pour mac ? Il n’y a pas un autre accès via les menus classiques ?

Bonsoir

Je regarde demain et te fais un retour

« De plus, est-il possible d’avoir un résultat par ligne ? Plutôt que tous les résultats dans une seule cellule ? Une ligne par variété trouvée ? »

Par ligne oui mais dans quelle colonne ?
Il me faut une colonne totalement libre merci donc de me la déterminer (lettre et onglet)

A demain donc

alt+F8 ça marche aussi pour mac ?

Aucune idée je n’ai jamais eu de MAC toujours que du Windows

Il n’y a pas un autre accès via les menus classiques ?

Sur la barre de menu Excel :

Menu « Affichage » puis dernière icone « Macros » choisir « Afficher les macros » puis ensuite même procédure que par Alt+F8

dans la fenêtre qui s’ouvre sélectionnes dans le choix « Macro dans » l’option « Ce classeur » puis dans la fenêtre principale choisi « Traitement » et actives à droite l’icone « Exécuter »

Testes et dis moi

Dans l’idéal, j’aimerais que les résultats arrivent dans la colonne de D65 à D90 (s’il faut rajouter des lignes au tableau récolte pas de problème). S’il faut une colonne entièrement libre, dans ce cas met moi ça en colonne AF (à côté de mes tableaux semis, plantations, récoltes, interventions. Je m’arrangerais après pour que ça arrive dans le tableau récolte avec des formules.

Merci pour la précision
As tu essayé en lançant la macro par le menu Affichage/Macro que je viens de te d’écrire ?

Ok j’ai repérer la manip pour Alt+F8 à partir des menus. D’ailleurs, quand je l’ai fait, le résultat s’est bien affiché en C65 comme je l’avais modifié. Je m’améliore ! :slight_smile: Bon par contre, à chaque fois que je change de semaine, ça ne change pas le résultat (même en refaisant la manip Alt+F8)… il doit donc y avoir un problème quelque part quand même.

C est déjà une bonne progression
Le premier essai obtenu était il correct avec la première semaine saisie ?
Si oui le traitement est conforme tu ne peux donc pas obtenir le même résultat pour une autre semaine saisie si celle-ci est bien réalisée en cellule A2 es tu certain de celle utilisée ? D’ailleurs cela expliquerait que l automatisme lors de la saisie ne fonctionne pas et que tu soit obligé d utiliser le alt+F8 pour activer la procédure
L automatisme de déclenchement ne fonctionne que sur la cellule A2
Vérifiés cet aspect
Lors de tes essais avec le fichier que je t ai fourni tu m avais confirmé son bon fonctionnement mais sur plusieurs semaines ?