Remplissage du tbNomJourFérié

Bonjour à toutes et à tous,

Feuille Accueil : clic sur le bouton de commande Création menus

Formulaire UF01_CréationMenus :

1) Nom nature création menu : dans la liste déroulante, cliquer sur menu midi retraite

2) Date du menu : 04 janvier 2024

tbNomJourFérié : il indique Lundi de Pâques alors que ce jour férié correspond au 01 avril 2024. Pour les 02 et 03 janvier, j'ai effacé le contenu de ce tb avant d'effectuer la validation.

Merci de m'apporter votre aide pour régler ce problème.

Bonnes journée et continuation à toutes et à tous. Prenez bien soin de vous.

10menus-2024-smp.zip (379.51 Ko)

Après vérifications et tetsts, il semblerait que cela provenait d'une erreur figurant dans la feuille Listes, tableau structuré tabJoursFériés, cellule BC5 : dans la formule, il y a lieu de remplacer BC4 par BC1. Éventuellement, merci de me confirmer.

Bonjour,

Je ne vois pas apparaître la date du jour férié dans "tbNomJourFérié"

budgets

Cdlt

Bonjour Arturo 83,

Regarder la capture d'écran jointe si cela marche.

Edit modo : lien supprimé, merci de mettre les copies d'écran sur le forum SVP
Vous avez un bouton pour ça

image

Voici

2023 11 10


Ce sera difficile de trouver une solution, chez-moi cela fonctionne correctement et pas chez vous.

Comprenez bien que je ne peux pas chercher une erreur où il n'y en a pas.

La question que je me pose est: Comment se fait-il que nous ayons deux résultats différents en faisant les mêmes actions sur le même fichier?

Jusqu'à ce jour, cela fonctionnait-il bien? ou bien, vous n'avez pas pu le constater jusqu'à auparavant?

PS; il me vient une idée; regardez quel est le calendrier utilisé dans les options, le mien, c'est 1900

budgets

Je n'avais rien fait avant aujourd'hui. Oui, c'est bizarre que cela marche chez vous et pas chez moi.

Capture d'écran : automatiquement, il va dans One drive. Comment procéder pour que cela aille dans Images, quitte à supprimer One drive de mon ordinateur (il ne m'a jamais emballé) ?

Avez-vous pu voir ma capture d'écran ?

La case calendrier n'était pas cochée. Je l'ai cochée. Il semblerait que le problème soit résolu. Je vais faire quelques tests et je vous tiens informé. Dans le fichier MENUS 2023, cette case n'était pas cochée et cela n'a pas posé de problème. J'ai essayé le premier avril 2024, Lundi de Pâques, mais le tbNomJourfgérié reste vide.

Capture d'écran : automatiquement, il va dans One drive. Comment procéder pour que cela aille dans Images, quitte à supprimer One drive de mon ordinateur (il ne m'a jamais emballé) ?
Pour l'enregistrer sur votre PC, faire enregistrer sous et sélectionner le bon répertoire (en principe il existe le répertoire "Image"). Pour ma part, j'ai abandonné l'idée d'enregistrer sous "'One drive", vu la quantité de fichiers enregistrés, il mettait un temps fou pour démarrer.

La case calendrier n'était pas cochée. Je l'ai cochée. Il semblerait que le problème soit résolu. Je vais faire quelques tests et je vous tiens informé. Dans le fichier MENUS 2023, cette case n'était pas cochée et cela n'a pas posé de problème. J'ai essayé le premier avril 2024, Lundi de Pâques, mais le tbNomJourfgérié reste vide.

Chez moi, la case est bien décochée et, si je mets la date du menu le 1/04/2024, lje lundi de pâques s'affiche bien.
menus 2024 smp3
8menus-2024-smp.zip (362.22 Ko)

Comme l'année 2024 est une année bissextile, peut-être une modification est nécessaire dans la formule de la cellule BC5 du tableau structuré TabNomJoursfériés. Ne me demandez pas ce que signifient tous ces chiffres car je n'en sais rien et que je n'y comprends rien, hélas.

Bonjour,

Je ne vois pas l'utilité de vos variables publiques ?

Déclarez-les en local comme on vous l'a déjà dit, et votre problème sera réglé.

Bonjour,

Faisons des tests:

-Dans la macro "Private Sub tbDateMenu_Change()" mettez un point d'arrêt au niveau de "On error goto 0" comme dans la vidéo ci-dessous, puis ouvrez le formulaire et remplissez-le avec la date du 4 janvier 2024.

Passez la souris sur les parties en rouge ci dessous:

J = WorksheetFunction.Match(CLng(DateValue(tbDateMenu.Value)), Range("TabJoursFériés[Date jour férié]"), 0)

sur tbDateMenu.Value, vous devriez avoir "4 janvier 2024" et sur J vous devriez avoir 3

budgets

La formule du calcul du jour de pâques dans "TabJoursFériés" est correcte et le fait de changer le choix de l"année issue de BC3 ou BD1 ne changera rien

si vous voulez prendre BD1, il faudra supprimer le mot "Année" dans la formule.

=DATE($BD$1;3;29,56+0,979*MOD(204-11*MOD($BD$1;19);30)-JOURSEM(DATE($BD$1;3;28,56+0,979*MOD(204-11*MOD($BD$1;19);30))))

Bonjour Arturo83,

Enfin quelqu'un qui m'explique clairement ce que je dois voir.

Résultat du test : J=0, Date du menu : 04 janvier 2024

Donc, il y a un problème au niveau de J (la procédure se met en arrêt). Peut--être sa déclaration (J as Integer) est-elle erronée. Pourquoi doit-il sortir 3 ?

Bonjour BeGood,

J'ai déclaré mes variables en local mais le tbNomJourFérié ne se remplit pas (il devrait mettre Lundi de Pâques). Point d'arrêt : J = 0, Date du menu : 01 avril 2024

Fournissez votre fichier modifié.

5menus-2024-smp.zip (376.02 Ko)

Cela fonctionne correctement maintenant. Quel est votre problème ?

Quand je choisis 01 avril 2024 comme date du menu, le tbNomJourFérié reste vide. Point d'arrêt : j=0, Date du menu : 01 avril 2024. J'ai essayé Dim J as String : point d'arrêt ; J=" ", date du menu : 01 avril 2024.

Pour moi tout est correct avec votre fichier. Décrivez précisément ce que vous faites sinon on ne va pas s'en sortir.

Feuille Accueil : clic sur le bouton de commande Création Menus

Formulaire UF01_CréationMenus : Nom nature création menu : dans la liste déroulante, clic sur Menu midi retraite, Date du menu : dans le calendrier, clic sur la flèche de droite pour changer le mois (dépassé Décembre, l'année devient 2024) jusqu'à avril, puis dans avril, clic sur 1 : non seulement le tbNomJourférié ne se remplit pas et le formulaire laisse place à la feuille Code et se place sur le point d'arrêt puis j'ai le mot arrêt tout en haut. À moins que cela vienne du fait que les autres cb ne soient pas remplis.

Si vous mettez un point d'arrêt, comment voulez-vous que le code puisse s'exécuter ?

j'exécute puis je mets le point d'arrêt pour voir le résultat.

Rechercher des sujets similaires à "remplissage tbnomjourferie"