Budgets 1 : création des produits

Résolu/Fermé
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023 - Modifié le 30 oct. 2019 à 06:56
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023 - 11 févr. 2020 à 22:32
Bonjour,

Les modules Affichage et ModulePA_CréerPa sont-ils corrects ? J'espère que mon bienfaiteur ALS35 va voir ce message. Quand cette partie de création des produits sera terminée, j'entamerai la seconde partie pour enregistrer toutes mes dépenses et recettes journalières, calculer le solde de mon argent, répartir toutes les dépenses et recettes par catégories, fournisseurs, clients, etc.
https://cjoint.com/c/IJDtZwSFEm6
https://cjoint.com/c/IJDuYY2y8D6
Quelqu'un semble avoir répondu mais il m'a été impossible de lire sa réponse et, en plus, elle ne figure pas ici.



Configuration: Windows / Chrome 78.0.3904.70


107 réponses

BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
8 déc. 2019 à 11:23
Penses-tu que cela marcherait en partant de la date de création ? Sinon, je ferai une liste déroulante.
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
8 déc. 2019 à 11:39
Et s'il y a plusieurs produits qui ont la même date de création ? Et comment vas-tu choisir pratiquement la date de création ?
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
8 déc. 2019 à 12:53
Pour l'instant, j'ai quelques idées mais je ne sais pas ce que cela va donner. Il faut que j'essaie pour voir si j'aurai le résultat souhaité.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 8 déc. 2019 à 16:42
C'est le merdier. Dans la feuille shAccueilArticlesBudgétaires, dans le rectangle Articles alimentaires, en dessous de la ligne Modifier articles budgétaires alimentaires, impossible de modifier les colonnes A10, B10, C10 afin d'y inclure des validations des données. Si tu as une solution, elle sera la bienvenue.
https://cjoint.com/c/ILipIptdN1I
Regarde la feuille shAccueilMenus du fichier ci-dessous (mots de passe : MENUS 2020 puis encore MENUS 2020), place toi en C7, dans la barre texte en haut, C7 apparaît bien et non pas rectangle 1, à moins que cela ne soit pas un rectangle.
https://cjoint.com/c/ILipOjXQ8aI

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
8 déc. 2019 à 17:38
Et oui, si tu places un objet avec un fond non transparent sur une feuille Excel, tu n'as pas accès aux cellules derrière.
Dans MENUS, c'était juste un fond de couleur entourant les boutons.
Ici cela donnerait quelque chose comme ceci, ça prend un peu plus de place.
https://www.cjoint.com/c/ILiqLWDQG6o

Bonne continuation
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 8 déc. 2019 à 22:08
Merci. Comment as-tu fait pour arriver à ce résultat ? Cela va me permettre d'en faire autant pour le reste.
Pour les jours, 01, 02,etc. on le formate en personnalisée et dans type, on tape 00;dans la feuille Accueil articles budgétaires, faut-il également personnaliser ? À première vue, je dirais oui car malgré l'utilisation du nom défini lors de la validation des données, si je clique sur 01, il sort 1.
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
9 déc. 2019 à 09:54
Bonjour,

Il ne s'agit que de mise en forme, suppression rectangle, ajout et redimensionnement de colonnes, couleur de remplissage et bordure.

Bonne continuation
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
9 déc. 2019 à 10:31
Bonjour ALS35,

et pour le zéro personnalisé ?
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
9 déc. 2019 à 10:54
C’est ton choix, il faut personnaliser chaque cellule dans laquelle tu veux voir 01 pour 1.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 9 déc. 2019 à 14:52
Essaie de voir pourquoi le numéro de création n'obéit pas aux instructions données. D'avance merci.
Pourquoi cette erreur de else sans if dans le moduleABDA, macro CréerABDA ?
https://cjoint.com/c/ILjn0rvLQDI

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
9 déc. 2019 à 16:10
BUDGETS,

Je te laisse faire, mais là je crois que tu t'embarques dans une grosse galère !

a) le numéro de création n'obéit pas aux instructions
Je t'ai déjà dit à plusieurs reprises qu'il y avait un problème avec le numéro de création et que j'avais refait une formule qui fonctionne et que voici
="DA"&TEXTE(LIGNE()-LIGNE(TabArticlesProduitsAlimentaires[[#En-têtes];[Numéro création produit alimentaire]]);"000")

Et je t'ai dit aussi plusieurs fois que ce numéro de création me paraissait inutile.

b) Pourquoi cette erreur de else sans if dans CréerABDA
Parce que tu n'as pas respecté la syntaxe de l'instruction IF précédente, tu as placé l'instruction qui suit le then sur la même ligne que celui-ci, dans ce cas l'instruction If est considérée comme complète et le mot clé Else qui suit est considéré comme orphelin (sans If)
De plus ne coupe pas tes instructions n’importe comment en bout de ligne mais à des endroits judicieux pour la lisibilité du code.
Voici un code qui fonctionne
        'Initialiser ou effacer la date création
        If shAccueilArticlesBudgétaires.Range("E7").Value <> "" And _
           shAccueilArticlesBudgétaires.Range("D7").Value <> "" And _
           shAccueilArticlesBudgétaires.Range("C7").Value <> "" Then
            .Range("B7").Value = DateSerial(shAccueilArticlesBudgétaires.Range("E7").Value, _
                                            Month("01 " & shAccueilArticlesBudgétaires.Range("D7").Value), _
                                            shAccueilArticlesBudgétaires.Range("C7").Value)
        Else
            .Range("B7").ClearContents
        End If

Je pense aussi que, comme le numéro de création, cette date de création me semble inutile.

C'est toi qui définit tes besoins.

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 9 déc. 2019 à 16:24
J'essaie de trouver une solution pour modifier soit par date de création, soit par validation des données qui ferait appel au numéro de création comme dans la feuille produits du fichier menus 2020. C'est compliqué ce if then : des fois on peut tout mettre sur la même ligne, d'autre fois non. Pour moi, qui n'est pas expert, ce n'est pas évident.

0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 9 déc. 2019 à 16:41
Peut-être que cela vient que le colonne nom produit reste vide (les formules ont disparu une nouvelle fois !) mais le tri ne se fait pas dans la feuille shBDProduits. Ce sont les validation des données ou les lignes sierreur(index) qui sont à vider, je ne me souviens plus.
https://cjoint.com/c/ILjpLLdd8oI

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
9 déc. 2019 à 18:22
Ça part de tous les bords !
Tu remets les formules, et tu effaces juste les cellules de choix (avec liste déroulante)

Bon courage
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 9 déc. 2019 à 19:04
C'est dans le moduleAffichage (procédure EffacerDonnéesSaisiesAA) que cela se passe ? Transformer la ligne actuelle en différentes lignes ayant une liste de validation ?

0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 9 déc. 2019 à 21:30
J'ai modifié le module affichage, procédure citée dans mon précédent message mais les instructions ne sont pas exécutées. J'ai trouvé, il faut cliquer sur le bouton de commande Effacer données feuille de la feuille shSaisieAA pour faire disparaître le contenu des cellules concernées. Pour le numéro création, il faut copier-coller la formule à chaque fois car elle ne sort pas automatiquement, contrairement aux menus, autant que je m'en souvienne.
https://cjoint.com/c/ILjt3ms3G6I
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
10 déc. 2019 à 09:36
Bonjour BUDGETS,

Bien pour ta procédure EffacerDonnéesSaisiesAA.
Pour le numéro de création c'est bien automatique mais supprime toutes tes lignes vides ne contenant que ce numéro, cela ne sert à rien. On n'est pas dans un tableau de type MENUS !

Il y a aussi deux choses qui m'énervent, c'est ton mot de passe, supprime-le une bonne fois pour toutes, et la procédure Masquer les feuilles, c'est peut-être bien à la fin mais en phase de mise au point c'est casse-pieds ou alors fait au moins une procédure d'affichage de toutes les feuilles.

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
10 déc. 2019 à 11:13
Bonjour ALS35,

Excuses-moi, si tu as reçu un fichier avec mot de passe, c'est une erreur involontaire. Je n'ai pas compris ton problème pour Masquer les feuilles.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
10 déc. 2019 à 16:02
J'ai créé l'article 71. Regarde la feuille shArticlesproduitsAlimentaires : l'article 71 y figure bien mais le numéro de création ne sort pas; ce dont je t'ai parlé hier malgré que j'aie effacé les lignes vides comme tu me l'as suggéré dans ton dernier message.
https://cjoint.com/c/ILkpbVM6OII
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
10 déc. 2019 à 17:09
Bonsoir BUDGETS,

Tu supprimes les quelques 450 (!) lignes vides de la table (supprimer et pas simplement effacer), tu te positionnes en F6 et tu utilises la poignée de recopie, le petit carré noir en bas à droite, pour tirer la formule jusqu'en bas de la colonne (F13).
Maintenant ça doit être bon quand tu ajoutes un article.

Justement ce que je veux dire avec MasquerFeuilles, c'est que quand tu fais Valider création article, tu masques les feuilles à la fin de la procédure et il faut systématiquement les ré-afficher pour voir le résultat.
Soit tu mets MasquerFeuilles en commenatires, soit tu crées une procédure AfficherFeuilles et un bouton qui permet facilement de les réafficher toutes en une seule fois.

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 10 déc. 2019 à 22:07
Je travaille sur le module ModifABDA à partir de la date de création et en m'appuyant sur la modification des menus midi retraite. Cela a-t-il une importance capitale si date création se trouve dans la colonne K de la feuille shBDProduits et dans la colonne G de la feuille shArticlesProduitsAlimentaires. De toute façon, comme j'ai créé une nouvelle colonne dans la feuille shArticlesproduitsAlimentaires, je vais modifier le moduleABDA, notamment deux procédures (InsérerDonnéesABDA, GénérerDonnéesABDA) pour tenir compte de cet ajout. D'après moi, sauf erreur ou omission de ma part, la procédure CréerABDA n'a pas à être modifiée ni les modules Affichage et Imprimer. Si tu as une solution pour modifier des produits dont la date de création est la même, merci de me la faire connaître. Dans le cas contraire, pour chaque produit créé, la date de création sera différente (conférer les menus, et plus particulièrement les dates menus). Pour modifier à partir du numéro création, celui-ci doit-il être présent dans les deux feuilles (shBDProduits et shArticlesProduitsAlimentaires). Donc, en résumé, modification basée
- soit sur la date création avec à modifier à oui (ma préférée puisque faite sur le modèle des menus)
- soit sur le numéro création avec à modifier à oui
- soit, dernière possibilité, sur le code produit avec à modifier à oui
https://cjoint.com/c/ILkvgT6JR6I


0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
11 déc. 2019 à 09:34
Bonjour BUDGETS,

Comme souvent, tu prends le problème à l'envers, ce n'est pas ton fichier qu'il faut à tout prix adapter à une macro qui était vraie dans un autre contexte, mais plutôt l'inverse.

La règle dans une base de données c'est d'avoir un identifiant unique qui permet de référencer un enregistrement, ici une ligne de la Table produits (ou Table Article alimentaire).
La date de création n'est pas unique
Le numéro de création dans sa version actuelle est juste un numéro d'affichage du numéro de ligne dans la table et est donc variable selon le remplissage de la table
Le code article (ou nom article) est unique puisqu'on interdit d'un avoir un deuxième lors de la création
et tu sais aussi ce que je pense de la date et du numéro de création !

(Dans MENUS, un menu était identifié par une date unique, pas la date de création mais la date calendaire)

C'est toi qui décides.

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 11 déc. 2019 à 10:40
Bonjour ALS35,

Donc, si je suis ton raisonnement, je dois modifier d'après le code article en le déclarant comme dim codearticle as string. À part, une liste déroulante, y-a-t-il une méthode qui permettrait d'accéder aux codes articles du même genre que les menus qui se faisait par la date calendaire. La date de création n'est pas unique : si tu lis bien mon précédent message, la date création serait unique puisque j'ai prévu un article créé, date de création : mercredi 11 décembre 2019. Un autre article créé ce mercredi, la date de création sera jeudi 12 décembre 2019 (évidemment, pour éviter d'éventuels problèmes de date de création, je commencerai au 01 janvier 2019).

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
11 déc. 2019 à 11:25
Bonjour,

Dans ton raisonnement, la date de création variable n'est donc plus une date de création mais un moyen d'identifier de manière unique un article, mais cela tu l'as déjà via le code ou le nom article et de manière plus simple.
Dans MENUS, le choix de la date se faisait par trois listes déroulantes (jour, mois, année) et il fallait reconstituer la date calendaire, avec le code article (ou le nom) il n'y a qu'une seule liste et il n'y a rien à reconstituer. Que veux-tu dire par "en le déclarant comme dim codearticle as string" ?

Maintenant pose-toi aussi la question de l'utilité de la fonction Modification, est-elle vraiment nécessaire, quels sont les éléments d'un article que tu vas vouloir modifier ?

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
11 déc. 2019 à 13:35
Je prévois la modification en cas de besoin. Les cellules B11 à B14 incluses seront modifiables. Je ne me souviens plus si c'est toi qui l'a fait ou quelqu'un d'autre, mais dans un programme il était prévu d'avoir un message si je souhaitais modifier une cellule pour laquelle une interdiction de modification était prévue.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 11 déc. 2019 à 22:00
1) Je continue à codifier la modification. Un clic sur Modification articles budgétaires alimentaires ne produit aucune réaction. Peut-être faut-il prévoir, dans la feuille shArticlesProduitsAlimentaires, une présentation comme dans les feuilles menus 1 Janvier, 2 Février etc.)
https://cjoint.com/c/ILlu36haKxI

2) Prévoir l'interdiction de modifier les cellules B3 à B10 incluses.
Bonnes nuit et continuation. À demain.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
12 déc. 2019 à 14:34
BonjourALS35,

Clic sur Modification articles budgétaires alimentaires : aucun effet. Problème résolu.
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
12 déc. 2019 à 14:49
Bonjour BUDGETS,

Désolé pour le délai mais j'étais très occupé depuis hier.
Très bien si tu as pu résoudre des problèmes.
Pour l'interdiction de modification, il y a ce genre de mécanisme dans MENUS feuille Modif Produit (shMP), je te laisse voir où.

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 12 déc. 2019 à 15:44
Je continue de codifier ModifABDA. Donc clic sur Modification, j'atterris bien sur shModifABDA mais pour l'instant les cellules B7 et B9 ne se remplissent pas. Pourquoi ? Je fais des essais après chaque instruction écrite pour ne pas avoir trop de corrections à faire en une seule fois. J'ai essayé avec la formule de modifMMR (sans +3,10) mais cela me sort pas de produit alimentaire pour la date choisie. J'ai supprimé tous les enregistrements donc certains étaient manuels dans les feuilles shBDProduits et shArticlesbudgétairesalimentaires puis fait une création avec le bouton de commande création qui s'est déroulée normalement sauf que dans la deuxième feuille la colonne date création ne se remplit pas, je me doute d'où cela vient, je verrai ce problème ultérieurement.
https://cjoint.com/c/ILmokPxbDtI

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
12 déc. 2019 à 15:50
Problème d'indice de boucle, il faut faire Ici = I+3 (la table démarre en ligne 3)

Remplace l’instruction
        If shBDProduits.Cells(I + 3, 11).Value = DateCréationArticleAlimentaire And shBDProduits.Cells(I + 3, 10).Value = "Oui" Then Ici = I + 3

par celle-ci
        If shBDProduits.Cells(I + 3, 11).Value = DateCréationArticleAlimentaire Then Ici = I + 3


et tant qu'on y est remplace plus loin
    'Date création
shBDProduits.Range("K" & Ici).Copy 'Colonne K de la feuille shBDProduits : date création
shModifABDA.Range("B7").PasteSpecial Paste:=xlPasteValues 'Cellule B7 de la feuille shModifABDA : Date création articles budgétaires dépenses alimentaires

simplement par
       shModifABDA .Range("B7").Value = shBDProduits.Range("K" & Ici) 


et à suivre pour les autres

Bon courage
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
12 déc. 2019 à 17:12
Merci. Cela fonctionne, comme d'habitude évidemment. Faut-il conserver tout ce qui concerne la date de création et la ces colonnes Codeàmodifier et Nomàmodifier ?
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
12 déc. 2019 à 17:53
Ouh là là !!! Si c'était pour moi la réponse serait Non.
Mais ai-je bien compris ta question, est-ce une question générale ou juste sur l'aspect Modification ?
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 12 déc. 2019 à 18:57
Pour modification. Sinon, si tu as une solution qui permette la modification sans avoir recours à cela, elle sera la bienvenue. Comme tu l'as dit dans un précédent message, le code produit est unique donc il pourrait servir de critère avec, éventuellement, le Nom à modifier à Oui.

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
12 déc. 2019 à 18:30
Un exemple de la modification avec le code produit à la place de la date de création. Je n'ai pas changé le reste.
https://www.cjoint.com/c/ILmrDFcJWyZ
0