Certains cb et tb restent vides

Bonjour à toutes et à tous,

Feuille Accueil : clic sur le bouton de commande Création menus. Formulaire UF02Création menus : calendrier : 20 juillet 2025; Nature menu : clic sur légume weekend dimanche; Légumes : clic sur Frites; Nature menu allégée : clic sur Menu journalier; Légume deux : clic sur Asperges WE; Nature menu : clic sur Viande soir; Viandes : clic sur Saucisson; le tbCodeViandes, le cbPériodeViandes, le tbCodePériodeViandes, le cbConditionnementViandes, le tbCodeConditionnementViandes restent vides alors qu'ils devraient se remplir automatiquement; Nature menu : clic sur Desserts weekend : mêmes problèmes que pour Viandes. De plus, le tbMoisMenu ne se remplit pas.

Merci de m'aider à corriger ces différents problèmes.

5comptabilite.xlsm (234.99 Ko)

Bonjour,

Un peu complexe ton problème

Bonjour à tous,

le tbCodeViandes, le cbPériodeViandes, le tbCodePériodeViandes, le cbConditionnementViandes, le tbCodeConditionnementViandes restent vides alors qu'ils devraient se remplir automatiquement

Où se trouve le code qui permet de le faire ?

si il existe, je ne sais pas. Si il est à créer, je ne sais pas comment procéder. j'ai trouvé, il faut créer les procédures cbViande_Change et cbConditionnement_Change. Je viens de créer la procédure cbViandes_Change, j'ai modifié Légumes par Viandes là ou cela était nécessaire, créé les lignes tbCodeViandes, cbPériodeViandes et tbCodePériodeViandes : j'ai créé un menus légumes mercredi jeudi et cela fonctionne. Je vais continuer sur ma lancée. Merci de la quesyion posée, cela m'a beaucoup aidé. Pour le 20 juillet, j'ai bien la liste des viandes, par contre le tbCodeViandes, le cbPériodeViandes et le tbCodePériodeViandes sont incorrects. Je vais vérifier les références dans le TabBDLégumesViandesDessers. Il reprends les références de Frites.

Dans les procédures cbLégumeDeux et cbViandes_Change, j'ai mis en commentaires certaines instructions que je juge inutiles ans ces procédures. Il va falloir certainement créer une procédure pour mois menu car actuellement il ne se remplit pas.

5comptabilite.xlsm (236.21 Ko)

Re,

Si vous avez des infos légumes à la place de la viande c'est que vous avez oublié un changement quelque part !

Votre mode opératoire est franchement compliqué !

J'ai essayé de reprendre la méthode d'Arturo83 (création articles menus) qui fonctionne correctement mais cela semble ne pas être idéal pour la création des menus.

Pas assez expert pour découvrir seul à quel endroit j'ai oublié de faire un changement. Je viens de regarder ma procédure cbViandes_Change, que j'ai comparée à cbLégumes_Change, j'ai bien Viandes partout où cela est nécessaire, donc je ne comprends pas le pourquoi de la reprise de Légumes pour la viande. Si vous avez vu quelque chose qui aurait dû changer mais qui ne l'a pas été fait, merci de me le signaler. bravo GeGood, vous aviez deviné : il s'agissait bien d'un oubli de changement dans la procédure cbViandes_Change :

'Si ce n'est pas une suppression, alors on fait la recherche dans la feuille Listes, tableau structuré TabLégumesViandesDesserts, colonne _
Légumes, Viandes, Desserts. Remarque importante : la ligne suivante est obligatoire sinon la Zone de liste modifiable cbPériodeLégumes _
reste vide.
Else
I = WorksheetFunction.Match(cbLégumes, Range("TabLégumesViandesDesserts[Légumes, Viandes, Desserts]"), 0) : il est sur cbLégumes au lieu de cbViandes. J'ai eu beaucoup de mal à trouver ce manque de changement.

Bonjour,

Bonne nouvelle !

Mettez à jour également les commentaires (beaucoup sont inutiles et nuisent à la lisibilité du code), et faites l'indentation correctement on y verra plus clair

Bonjour BeGood,

Mettre à jour les commentaires : je préférerais que vous supprimiez vous-même ceux qui vous semblent inutiles et modifiez ceux qui devraient l'être.

Indentation : je sais ce que c'est mais je n'ai jamais compris les critères pour la faire correctement.

La procédure tbMoisMenu_Change ne s'exécute pas (aucune des deux instructions)

8comptabilite.xlsm (238.62 Ko)

Bonjour,

Vous devez comprendre le fonctionnement des évènements pour les zones de texte et autres. L'évènement Change de la zone de texte 'tbMoisMenu' sera exécuté à chaque changement dans la dite zone de texte. et vous lui demandez de se mettre à jour par rapport à la valeur de la zone de texte 'tbDateMenu' avec un format. C'est n'importe quoi...

  • Soit vous utilisez l'évènement AfterUpdate de la zone de texte 'tbDateValue' et vous renseignez la valeur de 'tbMoisMenu' avec un format.
  • Soit vous utilisez l'évènement Change de 'tbMoisMenu' et là vous devez tester si c'est une date; Si oui alors vous appliquez un format.

Désolé, mais je n'ai rien compris. J'ai repris les deux instructions de deux fichiers différents et dans lesquels l'instruction mois menu se remplit correctement. Seule différence, dans l'un l'instruction est dans la procédure RécupérationMenu, dans l'autre, elle est située dans la procédure tbMoismenu_Change

Un petit exemple vaut mieux que de longs discours.

Faites un premier test sur la page test 1: entrez une date dans la première zone de texte, puis valider.

Faite deux tests sur la page test 2 entrez une date dans les deux zone de texte puis validez...

le test 1 est ce que je recherche, le test 2 est plus incompréhensible pour moi.

Pour le test 2, on vérifie si la saisie est une date, si oui alors on formate la valeur.

et si dans les deux cas, la date est sous la forme jeudi 24 juillet 2025 ? Dans les deux cas, le mois menu est choisi d'après la date menu (selon Calendrier) sous la forme présentée précédemment. Dans un fichier, la date menu est dans la procédure tbDateMenu_Change avec toutes les spécificités avec un appel à la procédure RécupérationMenu. Dans l'autre fichier, il y a également tbDateMenu_Change sans aucune référence à Mois menu, qui ne se trouve que dans la procédure RécupérationMenu qui a un appel à la procédure PrédéfinitionsSpécifiques qui elle n'a aucune référence à Mois menu. Peut-être devrais-je choisir la première solution du premier fichier.

Rechercher des sujets similaires à "certains restent vides"