Fichier Menus 10 ne fonctionne pas

Résolu/Fermé
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023 - 12 août 2019 à 17:00
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023 - 21 août 2019 à 14:40
Bonjour,
Le fichier Menus2V4.xlsm s'exécute correctement.
Le fichier Menus10.xlsm fonctionne correctement pour la création. Par contre, le tri tableau, Modifier produit, supprimer produit ne répondent pas aux instructions. Sauf erreur ou omission de ma part, le fichier Menus10.xlsm est une copie conforme du fichier Menus2V4.xlsm.
merci de m'apporter votre aide.
Ci-dessous le fichier Menus 10.xlsm
https://cjoint.com/c/IHmo2Dq5Pb6
Ci-dessous le fichier Menus2V4.xlsm
https://cjoint.com/c/IHmo4QIMch6


BUDGETS
A voir également:

30 réponses

eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
12 août 2019 à 17:59
Bonjour,

si c'est une copie conforme et bien refais-en une depuis celui qui fonctionne.
eric
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
12 août 2019 à 18:09
Ta réponse m'aide vraiment ! perdre son temps pour une telle réponse, c'est vraimenty idiot !
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
12 août 2019 à 19:10
Autant que la question.
Une copie conforme fonctionne à l'identique...
Chercherais-tu à nous rouler dans la farine ?
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
12 août 2019 à 19:10
Bonjour,

Quand on regarde tes deux fichiers, on voit qu'ils sont différents : pas le même nombre de feuilles, noms de feuilles différents, code VBA différents.
Alors quand tu dis "copie conforme", c'est étonnant !

Les dysfonctionnements sont à chercher dans les modifications que tu as faites pour passer de l'un à l'autre ! Quitte à les refaire progressivement depuis le début !

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 12 août 2019 à 19:16
Sauf erreur ou omission de ma part, j'ai tenu compte du changement de nom des feuilles. Donc une copie conforme en tenant compte du nom des feuilles.
Alors merci de me dire où sont mes erreurs dans le code VBA

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
12 août 2019 à 21:08
Bonjour,
Ben justement ce n'est plus conforme, et c'est toi qui connaît ton application et les modifications que tu as apportées, les anomalies sont là !
Tu peux repartir d'une sauvegarde que tu as surement faite ou sinon tu refaits les modifs petit à petit, tu testes et tu sauvegardes régulièrement.
Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
12 août 2019 à 21:21
Désolé, mais j'ai refait mon fichier entièrement puis j'ai créé les macros et leur code ligne par ligne en modifiant, le cas échéant, les noms quand cela s'imposait. Pour moi, j'ai tenu compte du changement de nom des cbo, des colonnes, du nom du tableau, etc. Or, malgré cela, mon programme ne fonctionne toujours pas en qui concerne les modifications, les suppressions et le tri tableau. J'ai relu ligne par ligne mon programme avec celui qui fonctionne que j'ai d'ailleurs imprimé et je n'ai trouvé aucune différence. Alors qu'on m'explique où se trouve (ent) l'erreur (les erreurs).
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
13 août 2019 à 10:52
Bonjour,
Je me répète, c'est toi qui connaît ton application et les modifications que tu as souhaitées y apporter.
Alors tu reprends ton fichier initial, tu supprimes toutes tes macros et tu les réintègres une par une en les modifiant, tu testes, si c'est OK tu sauvegarde une version intermédiaire et tu continues. En tout cas c'est comme ça que j'aurais procédé.
Tu vas forcément finir par tomber sur ce qui cloche. soit c'est toi qui fait une erreur de modification, soit ton code initial avait déjà des lacunes qui ne sont mises en évidence qu'après modification, déclaration de variables, dimensionnement de tableau, ...
Tu en profiteras pour commenter ton code afin d'expliquer ce qu'il est censé faire.
Bon courage
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
Modifié le 13 août 2019 à 12:35
Pour ce qui est de mon fichier initial (Menus2v4, que je n'ai pas construit en totalité puisque quelqu'un y a participé, il fonctionne correctement. À partir de ce fichier initial, j'ai construit le mien (Menus 10) en créant les différentes feuilles, en les nommant, en les remplissant le cas échéant. Puis j'ai écrit les instructions pour les feuilles Accueil et MP, puis les instructions pour les divers modules. À chaque fois, j'ai cliqué sur CompilerVBAProject qui des fois m'a sorti une ou plusieurs erreurs que j'ai corrigées et j'ai sauvegardé (je fais beaucoup de sauvegardes). Puis j'ai imprimé Le code des deux fichiers que j'ai comparé et je maintiens, persiste et signe, je n'ai trouvé aucune différence. Malgré cela, mon fichier ne s'exécute pas normalement en ce qui concerne le tri tableau, la modification (le combo box modifier produit ne se remplit), la suppression (le combo box supprimer produit reste vide). De plus, la feuille Produits ne se remplit pas à partir de la ligne A, colonne 1 (c'est peut-être l'origine des problèmes ci-dessus énoncés). Je suis d'accord pour commenter mon code mais je ne suis pas assez expert pour le faire normalement. Malgré mes demandes faites avec un fichier commenté, personne n'a voulu me confirmer ou infirmer mes commentaires. Donc, sans que quelqu'un le fasse lui-même, je voudrais qu'un membre du site me dise "regarde tel module, examine telle macro de ton fichier, telle ligne et compare-la avec le fichier Menus2V4". Je pense que je ne demande pas la lune, quand même !

0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
13 août 2019 à 13:25
bonjour, avec toute l'aide que tu reçois depuis des années, tu vas sans doute bientôt arriver sur la lune.
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
13 août 2019 à 15:23
Bonjour,

Puisque tu dis que le tri tableau ne s’effectue pas correctement, et bien regarde ta procédure TriTableau qui génère des erreur d’exécution, tu as peut-être oublié de modifier des TabRéfMenus en TabRéfProduits si j'ai compris ta logique !

Tu devais être dans la lune !

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 13 août 2019 à 18:08
J'ai regardé la procédure TriTableau : j'ai bien tenu compte du nom de la feuille (Produits), du nom du tableau (TabRéfProduits).
ActiveWorkbook.Worksheets("Produits").ListObjects("TabRéfProduits").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Produits").ListObjects("TabRéfProduits").Sort. _
SortFields.Add Key:=Range("TabRéfMenus[Code produit]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
Message d'erreur : la méthode 'Range' de l'objet '_global' a échoué.

Pour moi, l'erreur devrait plutôt venir de la procédure ValiderSaisieProduit, et particulièrement de cette ligne que je n'ai pas comprise :
Ici = range("B65000").End(xlup).Row + 1 '.Select

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
13 août 2019 à 18:41
Bonjour,
Regarde bien !
Tu as par deux fois le nom TabRéfMenus qui y apparaît, cette référence n'existe pas dans ton classeur, remplace cette référence par TabRéfProduits et teste la procédure, c'est à dire fait un tri quelconque manuel dans ton tableau de produits et lance la macro TriTableau uniquement, ajoute des produits si besoin puisque tu dis que la création fonctionne.
Cordialement,
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 13 août 2019 à 19:11
Merci ALS35,
Ma méthode est la bonne : faire lire mon programme par quelqu'un car à force de le lire et de le relire , je ne vois pas l'erreur. Toi, tu as vu aussitôt où était le problème. Rectification effectuée, tri tableau s'exécute.
De plus, la ligne 2 se déplace après la dernière création faite et reste vide, deuxième problème résolu. Maintenant, reste à régler le problème du combo box Modifier produit de la cellule D5 de la feuille Accueil qui ne se remplit pas quelque soit le choix fait dans la liste déroulante de la cellule C5 (j'ai testé après les modifications effectuées pour le tri tableau).
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
13 août 2019 à 21:33
Bonjour,

Non, une bonne méthode est de tester chaque modification avant de poursuivre pour déceler au plus vite les problèmes.
Tu avais les éléments en main, un message d'erreur signalait un souci sur une méthode de l'objet range et pour cause car le nom indiqué n'existait pas (Key:=Range("TabRéfMenus[Code produit] ")).

Par ailleurs, même si tu ne demande pas la lune, on n'est pas madame Soleil et lire un code non commenté et sans explication n'est pas aussi évident que tu le penses.
D'ailleurs je n'ai pas compris quel est ton mode opératoire pour modifier ou supprimer un produit.
L'important est qu'un de tes problèmes soit résolu.

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
13 août 2019 à 22:44
Cellule C5 de la feuille Accueil : validation des données : Autoriser : Liste, Source : Nom_Catégorie. Cellule D5 de la feuille Accueil : Selon le choix effectué dans la cellule C5, le combo box de la cellule D5 doit se remplir du contenu de la colonne Code produit de la feuille Produits à condition que dans la colonne À modifier de la feuille produits il y ait l'expression Oui. Dans ce cas, on choisit le code produit, clic sur Modifier produit de la feuille accueil, on arrive dans la feuille MP : Les modifications ne peuvent concerner que les cellules B8 à B16 de ladite feuille après qu'elle se soit remplie avec les informations de la feuille SP;je modifie ce que je souhaite modifier, je clique sur Valider modification produit, les changement doivent être enregistrés et visibles dans la feuille Produits sans qu'il y ait création d'une ligne.
Demain, enfin j'espère, je te donnerai d'autres explications. Mais pour l'instant, je pense que cela devrait suffire pour que le combo box Modifier produit de la feuille Accueil se remplisse enfin.
Bonnes fin de soirée, nuit et continuation.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 14 août 2019 à 15:00
Regarde le code de la feuille Accueil. J'ai mis des commentaires. Quand je ne sais pas, j'ai mis À expliquer. Impossible de faire le debogage Pas à pas détaillé. Quand ce problème des combo box qui ne se remplissent pas sera réglé, je ferai de nouveaux commentaires pour d'autres instructions. Il semblerait que le pas à pas détaillé ne puisse se faire que sur des modules.
Mon fichier menus 10 :
https://cjoint.com/c/IHomPdGK5C6
Le fichier modèle (impossible d'effectuer le débogage pas à pas détaillé)
https://cjoint.com/c/IHomQ71DsU6

Dans le fichier menus2V4.xlsm (comme dans le mien), module Modifie (ou Module Modifier), le pas pas détaillé sort une erreur à l'instruction ci-après alors que le programme de Menus2V4 fonctionne bien :
If ActiveSheet.cboModifierRéférentielsMenus.ListIndex = -1 Or ActiveSheet.cboModifierRéférentielsMenus = "Pas de référentiels à modifier" Then Exit Sub
Erreur : propriété ou méthode non gérée par cet objet.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
14 août 2019 à 17:51
J'ai enfin trouvé l'erreur que j'avais commise. Dans le code de la feuille Accueil, il ne fallait pas mentionner Code produit mais Nom Catégorie tant pour la modification que pour la suppression
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
14 août 2019 à 18:40
super! peux-tu alors marquer ce sujet comme résolu?
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
14 août 2019 à 18:43
Bonjour,

Bravo ! mais j'ai l'impression qu'il y a d'autres erreurs après

Pour info je te donne ici le code des procédures TriTableau et celle de la feuille accueil que j'ai aérées et commentées, je pense que c'est plus lisible que ce que tu as

Sub TriTableau()

'Supprimer les critères de tri dans le tableau TabRéfProduits
ActiveWorkbook.Worksheets("Produits").ListObjects("TabRéfProduits").Sort.SortFields.Clear

'Ajouter un ctitère de tri sur la colonne "Code produit" dans le tableau TabRéfProduits
ActiveWorkbook.Worksheets("Produits").ListObjects("TabRéfProduits").Sort.SortFields.Add _
Key:=Range("TabRéfProduits[Code produit]"), _
SortOn:=xlSortOnValues, _
Order:=xlAscending, _
DataOption:=xlSortNormal

'Ajouter un ctitère de tri sur la colonne "Nom produit" dans le tableau TabRéfProduits
ActiveWorkbook.Worksheets("Produits").ListObjects("TabRéfProduits").Sort.SortFields.Add _
Key:=Range("TabRéfProduits[Nom produit]"), _
SortOn:=xlSortOnValues, _
Order:=xlAscending, _
DataOption:=xlSortNormal

'Trier le tableau TabRéfProduits selon les critères de tri renseignés précédemment
With ActiveWorkbook.Worksheets("Produits").ListObjects("TabRéfProduits").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

End Sub


Public Ele As Range

Private Sub Worksheet_Change(ByVal Target As Range)

'Si le changement concerne la celulle "C5"
If Not Intersect(Target, Range("C5")) Is Nothing Then

'Effacer le contenu de la liste déroulante cboModifierProduit
cboModifierProduit.Clear

'Pour chaque cellule élément de la colonne "Nom catégorie" du tableau TabRéfProduits
For Each Ele In Application.Range("TabRéfProduits[Nom catégorie]")
'Si le contenu de cette cellule est égale à la catégorie de la cellule "C5" et qu'il y a "oui" dans la cellule 10 colonnes à droite
If Ele = Range("C5") And Ele.Offset(0, 10) = "Oui" Then
'Ajouter dans la liste déroulante cboModifierProduit le "Code Produit" qui se trouve juste à droite de la cellule élément
cboModifierProduit.AddItem Ele.Offset(0, 1)
' Ajouter le numéro de ligne de la cellule élément dans la deuxième colonne de la liste déroulante (utilité ?)
cboModifierProduit.List(ActiveSheet.cboModifierProduit.ListCount - 1, 1) = Ele.Row
End If
Next Ele

'Si le combo box Modifier produit est vide alors
If cboModifierProduit.ListCount = 0 Then
'La mention "Pas de produit à modifier" est ajoutée à l'intérieur du combo box Modifier produit
cboModifierProduit.AddItem "Pas de produit à modifier"
End If

'Affecter par défaut la première valeur de la liste lors de l'affichage de la liste déroulante cboModifierProdui
cboModifierProduit.ListIndex = 0

End If

'Si le changement concerne la celulle "C7"
If Not Intersect(Target, Range("C7")) Is Nothing Then

cboSupprimerProduit.Clear

For Each Ele In Application.Range("TabRéfProduits[Code produit]")
If Ele = Range("C7") Then
cboSupprimerProduit.AddItem Ele.Offset(0, -3)
cboSupprimerProduit.List(cboSupprimerProduit.ListCount - 1, 1) = Ele.Row
End If
Next Ele

If cboSupprimerProduit.ListCount = 0 Then
cboSupprimerProduit.AddItem "Pas de produit à supprimer"
End If

cboSupprimerProduit.ListIndex = 0

End If

End Sub

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 14 août 2019 à 19:38
Bonsoir ALS35,

Dans ton message, c'est surtout les commentaires qu tu as modifiés, le code semble identique tant pour le tri tableau que pour la feuille Accueil.
Merci pour ton aide pour ces trois problèmes. Pour ce qui es du code des autres feuilles et des modules, souhaites-tu que je l'écrive moi-même et que je te l'envoie (solution que je préfère car cela me permet d'essayer de comprendre l'instruction) ou tu le confectionnes toi-même et me le fais parvenir ensuite.
Bonne soirée, nuit et continuation. Joyeux 15 août.

pour YG_BE, pour l'instant, je ne souhaite pas clôturer le dossier car je souhaiterais qu'on s'attaque aux commentaires pour les autres feuilles et les modules comme l'a si bien fait ALS35.

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
14 août 2019 à 20:04
Bonjour,

Fais tes propres modifications, je pourrais les rectifier par la suite.

Bon courage
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
16 août 2019 à 11:47
Bonjour,

J'ai quelques questions concernant ton application car je peux te proposer quelques évolutions :

Quel est ta version d'Excel
Quelle est l'utilité de la ligne 0000- à la fin de la table produits
Dans la feuille MP quand on change la catégorie le code produit n'est plus cohérent avec la liste de choix, ne faudrait-il pas effacer alors ce code produit
Dans la feuille SP y-a--il des valeurs obligatoires à saisir, faut-il remettre à zéro certaines valeurs plutôt que de laisser les dernières utilisées, la date de création est en saisie manuelle peut-elle être automatique
Dans la feuille Accueil pourquoi la combobox Modifier utilise le code produit et la combobox Supprimer utilise l'intitulé, peut-on harmoniser les deux
Dans la feuille Référentiels la gestion de la liste Code produit (utilisée en feuille SP) est plutôt difficile à faire évoluer, les colonnes C et D sont-elles susceptibles de modifications

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
16 août 2019 à 12:30
Bonjour ALS35,

J'ai la version Microsoft office professionnel 2010.
Dans ce programme, Intitulé est utilisé à certains endroits mais je pense que cette colonne peut être supprimée et toutes les instructions faisant référence à Intitulé peuvent être abrogée. Il faudrait faire un essai pour voir ce que donnerait.
"Dans la feuille MP quand on change la catégorie le code produit n'est plus cohérent avec la liste de choix, ne faudrait-il pas effacer alors ce code produit". Je n'ai pas compris. Donnes-moi un exemple.
"Dans la feuille SP y-a--il des valeurs obligatoires à saisir, faut-il remettre à zéro certaines valeurs plutôt que de laisser les dernières utilisées, la date de création est en saisie manuelle peut-elle être automatique". Je pense que oui, on peut remettre les valeurs à zéro mais à condition que cela n'efface pas les validations des données ni les formules si erreur index. La date de création pourrait être automatique.
"Dans la feuille Accueil pourquoi la combobox Modifier utilise le code produit et la combobox Supprimer utilise l'intitulé, peut-on harmoniser les deux". Tu ne dois pas avoir le bon fichier car chez moi, Modifier produit, supprimer produit ont une validation des données dont la source est Nom_catégorie.
"Dans la feuille Référentiels la gestion de la liste Code produit (utilisée en feuille SP) est plutôt difficile à faire évoluer, les colonnes C et D sont-elles susceptibles de modifications". Les colonnes C et D ne sont pas susceptibles d'être modifiées.
J'espère avoir répondu à tes questions.
Bonnes journée et continuation.




0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
16 août 2019 à 14:45
Bonjour,

Merci de ta réponse.

Quelle est l'utilité de la ligne 0000- à la fin de la table produits ?

Pour la feuille MP, je voulais parler en fait de la feuille SP : tu crées un produit, les valeurs précédemment saisies sont affichées dans la feuille SP, si tu change la catégorie, le code produit déjà affiché n'est plus conforme à cette nouvelle catégorie, si tu regardes sur la liste déroulante Code produit tu vois qu'elle n'a rien à voir avec le code affiché.

Dans la feuille Accueil, je ne parlais pas des cellules C5 et C7 mais des contrôles ComboBox affichés à droite, le premier (modifier) contient le code produit, le second (supprimer) contient l'intitulé, quel est l'intérêt d'avoir deux méthodes différentes, mais si on supprime la colonne intitulé de la feuille produits cette question n'a plus lieu d'être.
Est-tu bien certain que cet Intitulé n'a pas d'intérêt pour toi, car le code est bien spécifique pour le générer ?

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
16 août 2019 à 16:38
À quel endroit vois-tu Code produit pour la modification, Intitulé pour la suppression ?
Pour la suppression, je crois avoir trouvé : dans le Module supprimer, il y a cette instruction :
Intitulé = shProduits.Range("A" & Ici).
Donc il faudrait remplacer A par E ?
Pour la modification, je n'ai pas trouvé.
Pour la feuille SP, on peut supprimer les mentions déjà affichées. Malheureusement, Clear efface toutes les formules si erreur index or je voudrais les conserver (ainsi que les validations des données). Je n'ai pas trouvé de solution qui répondrait à mes désirs.
Table produits : le tableau est vide : je créé la formule de la colonne Intitulé dans la cellule A2. Je crée un produit : la création s'enregistre dans la feuille produits, à partir de la cellule A2. La cellule A2 vierge reste vierge mais descend d'une ligne et se positionne en A3 et ainsi de suite. Une utilité : aucune idée.
J'ai fait ceci d'après un modèle qui m'a été fait par une ou plusieurs personnes. Et comme je ne suis pas un expert, et que cela fonctionne ainsi, je l'ai gardé sans savoir si cela était ou pas utile.
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
16 août 2019 à 18:17
Bonjour,
À quel endroit vois-tu Code produit pour la modification, Intitulé pour la suppression ?
dans la feuille Accueil ce sont les deux contrôles Combox à droite de C5 et C7
Si tu veux modifier ou supprimer un produit existant, tu choisis la catégirie dans C5 ou C7 et le ComboBox à droite de C5 contient un code produit alors que le ComboBox à droite de C7 conteint un intitulé
Pourquoi ?
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
16 août 2019 à 19:42
Ouf, mieux vaut tard que jamais. Je viens de comprendre enfin ce que tu veux dire. Alors ma nouvelle question : où se trouvent les instructions qui font que le combo box modifier produit se remplit du code produit, que le combo box supprimer produit se remplit de l'intitulé ?
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
16 août 2019 à 22:12
Bonsoir,

Procédure feuille accueil
cboModifierProduit.AddItem Ele.Offset(0, 1) et
cboSupprimerProduit.AddItem Ele.Offset(0, -3)
Je pense qu'il est préférable d'avoir l'intitulé dans les deux cas

Par ailleurs, j'ai pris le temps de faire une autre version pas mal modifiée que je te joins ici
Teste-la, peu importe que tu la gardes ou non, peut-être qu'il y des choses qui te semblent intéressantes et d'autres non. Il y a peut-être des bugs.

Dis-moi ce que tu en penses
https://www.cjoint.com/c/IHqukvcmYYF

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
16 août 2019 à 22:29
Une fois, j'ai dit quelque chose à quelqu'un? Je ne sais pas quelle mouche l'a alors piqué il ne m'a jmais répondu à mes messages.
Je vais te redire la même chose en espérant que cela ne vas pas t'offusquer alors que pour moi c'est un compliment sincère. Merci ALS35 pour ton aide, dommage que je ne t'ai pas connu plus tôt, je serai beaucoup plus avancé dans mon travail.
Pour moi, c'est un compliment et non je ne sais quoi de méchant.
Grâce à toi, j'ai compris certaines instructions, entre autres celles que tu mentionnes dans ton message concernant la feuille Accueil.
Nouveau fichier : feuille Accueil : rien à redire. Création, modification, suppression : je verrai cela dimanche. Demain c'est le jour réservé à mes romans.
Merci beaucoup ALS35 pour ton aide très précieuse et ta patience.
Bonnes fin de soirée, nuit et continuation.
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
17 août 2019 à 10:26
Bonjour ALS35,

Je viens d'effectuer diverses manipulations sur ton fichier. C'est extraordinaire : tout fonctionne correctement : la création, la modification la suppression (pour cette dernière, je n'ai pas accepté la suppression) et, de plus, ce qui a été un point noir jusqu'ici, la modification donne bien les renseignements enregistrés et, pour les champs modifiables, un changement de code change le nom et l'enregistrement modifie bien les données dans la feuille Produits et ne créée pas enfin une nouvelle ligne.
Merci beaucoup pour ton aide précieuse..
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
17 août 2019 à 18:42
Bonjour,

Merci bien, continue à bien tout tester, on ne sait jamais.

Je continue mes évolutions, : dans la feuille Accueil, je vais passer à l'intitulé pour les deux ComboBox, le numéro qui est affiché dans la deuxième colonne de la ComboBox Suppresssion et qui correspond au numéro de ligne du produit à supprimer dans la table Produits t'est-il utile ?

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
17 août 2019 à 19:17
Bonsoir ALS35,

Sauf erreur ou omission de ma part, dans le combo box supprimer, le numéro qui est affiché dans la deuxième colonne correspond au numéro de création (colonne B) et non au numéro de ligne. Je souhaiterais le garder.
Feuille accueil : Tu avais souhaité que la référence qui apparaissait dans le combo box Modifier produit soit de la même nature que celle du combo box Supprimer produit. Or, actuellement, ce n'est pas le cas.

0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
17 août 2019 à 19:40
Bonsoir,

1) Non, dans la ComboBox Supprimer le libellé qui apparaît, par exemple : PVWE01-2 13, est constitué d'une part de l'intitulé du produit (PVWE01-2) comprenant lui même le code produit (PVWE01) et le numéro de création (2) et d'autre part du numéro de ligne du produit dans le tableau Produits (13). C'est ce dernier numéro que pour le quel je te demande ton souhait

2) Pour la ComboBox Modifier tu peux modifier, pour tester, dans la procédure de la feuille Accueil
la ligne cboModifierProduit.AddItem Ele.Offset(0, 1) et mettre cboModifierProduit.AddItem Ele.Offset(0, -3), tu changes juste en -3

Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
17 août 2019 à 19:53
J'ai agrandi le combo box supprimer. En effet, le numéro de ligne apparaît. Lui, il peut disparaître, cela ne me dérange pas.
-3 : cela signifie avancer de 3 colonnes ?
-3 : cela signifie reculer de 3 colonnes ?
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
17 août 2019 à 21:16
Bonsoir,

.Offset(0, 1) signifie : même ligne 3 colonnes à gauche


Cordialement
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 17 août 2019 à 21:24
Je parlais de ces deux instructions dans la procédure Accueil. Il me semblait qu'on allait plutôt vers la droite que vers la gauche (à partir de la colonne A). À moins qu'on ne parte de la colonne E.

cboModifierProduit.AddItem Ele.Offset(0, 1) Modifier
cboSupprimerProduit.AddItem Ele.Offset(0, -3) Supprimer
BUDGETS
0
ALS35 Messages postés 1033 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 9 janvier 2024 139
17 août 2019 à 21:35
Bonsoir,

Non, raté !
Dans la procédure Accueil, Ele est une cellule qui pointe sur le Nom catégorie (colonne D)
(instruction For Each Ele In Application.Range("TabRéfProduits[Nom catégorie]"))

Ele.Offset(0, 1) signifie par rapport à la cellule Ele, prendre la cellule 1 colonne à droite c'est à dire le Code produit
Ele.Offset(0, -3) signifie par rapport à la cellule Ele, prendre la cellule 3 colonnes à gauche c'est à dire l'intitulé

A plus tard
0
BUDGETS Messages postés 1333 Date d'inscription samedi 19 juillet 2014 Statut Membre Dernière intervention 24 novembre 2023
Modifié le 17 août 2019 à 21:42
Je répète ce que j'ai dit écrit et dit hier : avec toi j'en apprends beaucoup et j'ajouterai même que j'en apprends plus qu'en trois ou quatre ans.
À part tes contributions très intéressantes ici, dans la vie tu es programmeur, analyste ou les deux à la fois ?
Bonnes fin de soirée, nuit et continuation.

0