Feuille liste de choix : colonnes Nom article
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Bonsoir à toutes et à tous,
Dans la feuille liste de choix, à partir de la colonne J, le nom article est suivi soit de DA, soit de DB, etc. car, à un moment donné, lors de la création des articles budgétaires, un article avait un nom identique dans un ou plusieurs tableaux structurés. À part cette solution de rajouter soit DA, soit DB, etc., ou de changer le nom article dans le tableau structuré suivant, aurait-il une autre solution pour éviter ces deux possibilités ? D'avance merci pour votre aide.
Je viens de retrouver un fichier (le voir ci-dessous) dans lequel ce problème semble résolu. Merci de m'indiquer dans quelle procédure et, dans ladite procédure, l'instruction qui permet d'éviter de changer le nom article ou d'y ajouter DA ou DB.
Les 2 fichiers ne sont pas comparables, votre fichier est bien plus complet que celui de Bertrand, dans votre fichier, le problème est qu'il y a un tableau commun en AS3:AT446 où tous les produits sont réunis, et que les recherches se font dans ce tableau or, vous avez des noms en double: exemple: ASPIRATEUR en ligne 130 et en ligne 204 avec des codes produits différents, si l'on fait une recherche de "ASPIRATEUR" dans ce tableau et qu'il n'y a rien qui distingue ces 2 lignes, le programme pointera toujours vers la ligne 130, d'où la nécessité d'ajouter une référence pour les distinguer l'une de l'autre, soit vous donnez des noms différents, soit vous gardez cette extension.
A noter que le fait d'utiliser un tableau commun simplifie les recherches puisque on s'adresse toujours à ce dernier et non pas à un tableau spécifique tels que: TabDB, TabDA, TabDH etc...
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
1) Je réitère ma question : pourquoi alors dans le programme de Bertrand le problème ne se pose plus (utilisation d'un tableau unique ?) Toujours dans le programme de Bertrand, comment sont remplies les CH à CJ incluses du tableau structuré TabProduits ?
2) Utiliser de préférence un tableau unique ?
Comme je ne suis pas à la place de Bertrand, il a abordé le problème d'une autre façon, et à ce que je voie, pour différencier les produits identiques, il a créé la clé produit" en colonne CK, en combinant le nom du produit avec le libellé du produit, alors que dans votre fichier , c'est la combinaison du nom du produit avec le code produit.
La question qu'il faut se poser est: Est le fait de voir le nom du produit avec son code produit dans les textboxes qui vous gêne?
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Pas compris la dernière question.
Tableau structuré TabProduits : les trois premières colonnes semblent être crées manuellement. La dernière (CK) fait l'objet d'une formule et c'est ce genre de tableau qui m'intéresse.
Code de ArticlesBudgétaires : tout sélectionner, rechercher : TabDa, TabDB, etc. TabLMR, TabLSLM, etc., TabProduits :résultat : texte recherché introuvable. Comment dans ce cas, le nom article apparait dans la saisie du formulaire et où va -t-il trouver l'information ?
Article budgétaire : selon la catégorie choisie, le cbArticle va dévoiler la liste correspondante : comment ? grâce à cbArticle.list de la procédure cbCatégorie_Change : cbArticle.List = Range("Tab" & tbCodeCatégorie).Value : comment va-t-il savoir de quel "Tab" il s'agit : selon le code catégorie déterminé d'après la catégorie choisie.
La dernière question: qu'est-ce qui vous gêne que le produit s'appelle par exemple "AGNEAU-DA" plutôt que "AGNEAU" ?, si ce n'est qu'une question d'affichage dans une textbox, on peut supprimer le "-DA"
******************************************************************************************************************************
Tableau structuré TabProduits : les trois premières colonnes semblent être crées manuellement. La dernière (CK) fait l'objet d'une formule et c'est ce genre de tableau qui m'intéresse. La valeur en CK est obtenue en associant le nom du produit avec son libellé, il suffit de cliquer sur la cellule CK 4 pour le voir, la formule est:
=[@[Nom produit]]& " " & [@[Libellé produit]]******************************************************************************************************************************
Code de ArticlesBudgétaires : tout sélectionner, rechercher : TabDa, TabDB, etc. TabLMR, TabLSLM, etc., TabProduits :résultat : texte recherché introuvable. Comment dans ce cas, le nom article apparait dans la saisie du formulaire et où va -t-il trouver l'information ?
De quel fichier? de quel formulaire?
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Il s'agit du fichier de Bertrand. Formulaire : UF01ArticlesBudgétaires
Pour l'instant, je décortique le fichier de Bertrand. Je ne m'occupe pas du mien.
Oui, mais si vous me promenez d'un fichier à un autre, ça va être difficile de suivre, d'autant plus que les structures sont différentes et vouloir appliquer les méthodes de l'un sur l'autre risque d'être compliqué? Cela fait faire beaucoup de modifications sans parler que pour chaque fichier il faut essayez d'en comprendre le principe et le code. Ce n'est pas une mince affaire.
cdlt
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Je répète: on travaille uniquement sur le fichier Bertrand 3.xlsm.
Tout ce qui suit, concerne BERTRAND 3.xlsm :
Tableau structuré TabProduits : les trois premières colonnes semblent être crées manuellement. La dernière (CK) fait l'objet d'une formule et c'est ce genre de tableau qui m'intéresse.
Code de ArticlesBudgétaires : tout sélectionner, rechercher : TabDa, TabDB, etc. TabLMR, TabLSLM, etc., TabProduits :résultat : texte recherché introuvable. Comment dans ce cas, le nom article apparait dans la saisie du formulaire et où va -t-il trouver l'information ?
Article budgétaire : selon la catégorie choisie, le cbArticle va dévoiler la liste correspondante : comment ? grâce à cbArticle.list de la procédure cbCatégorie_Change : cbArticle.List = Range("Tab" & tbCodeCatégorie).Value : comment va-t-il savoir de quel "Tab" il s'agit : selon le code catégorie déterminé d'après la catégorie choisie.
Si utilisation du TabProduits, quelle serait alors l'instruction adéquate ?
Bonjour,
Tableau structuré TabProduits : les trois premières colonnes semblent être crées manuellement. La dernière (CK) fait l'objet d'une formule et c'est ce genre de tableau qui m'intéresse.
Je vous ai donné la formule hier à 19h38.
************************************************************************************************
Code de ArticlesBudgétaires : tout sélectionner, rechercher : TabDa, TabDB, etc. TabLMR, TabLSLM, etc., TabProduits :résultat : texte recherché introuvable. Comment dans ce cas, le nom article apparait dans la saisie du formulaire et où va -t-il trouver l'information ?
c'est l'association de "Tab" & du tbCodeType (voir en bleu dans le code ci-dessous)
Private Sub cbType_Change()
cbCatégorie.Clear
If cbType.ListIndex = -1 Then
tbCodeType.Value = Empty
Else
'Va remplir le tbCodeType en allant chercher les informations dans la feuille Liste de choix, tableau structuré TabType, colonne 1 (Nom type).
tbCodeType.Value = cbType.Column(1)
cbCatégorie.List = Range("Tab" & tbCodeType).Value
End If
Call MiseÀJourTitre
End Sub
********************************************************************************************************
Article budgétaire : selon la catégorie choisie, le cbArticle va dévoiler la liste correspondante : comment ? grâce à cbArticle.list de la procédure cbCatégorie_Change : cbArticle.List = Range("Tab" & tbCodeCatégorie).Value : comment va-t-il savoir de quel "Tab" il s'agit :selon le code catégorie déterminé d'après la catégorie choisie.
Reprenez la macro précédente et mettez un point d'arrêt au niveau de la ligne "If cbType.ListIndex = -1 Then", puis revenez sur la feuille "Accueil" et cliquez sur "Articles budgétaires", dans le formulaire, sélectionnez le type d'article, aussitôt la macro s'arrête sur le point d'arrêt, continuez en pas à pas avec la touche F8,
après chaque ligne franchit par le surlignage jaune, vous pouvez voir le contenu de chaque variable qui apparaît en passant la souris au-dessus ces variables.
Voilà l'explication.
*********************************************************************************************************
Cdlt
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Bonjour Arturo83,
Vos informations confirment mes déductions. J'en suis ravi.
Je n'ai pas compris par contre l'utilité du point d'arrêt et des manœuvres à effectuer. Je vais tester.
Hier, vous avez suggéré d'utiliser un tableau unique. Ici, cela serait TabProduits. Quelle serait alors l'instruction (les instructions) à écrire pour l'utilisation de ce tableau et dans quelle procédure devrait-elle (devraient-elles) être créées ?
J'ai supprimé Agneau. Point d'arrêt sur la macro indiquée, à la ligne proposée. Retour sur la feuille Accueil, clic sur articles budgétaires. Sélection du type d'article. Arrêt sur le point d'arrêt : If cbType.listIndex=-1 then (passage de la souris sur cette ligne, cbType.listIndex=0); appui surla touche F8 : tbCodeType.value=Empty (passage de la souris sur cette ligne, tbCodeType.value = ""). Cela est-il conforme aux résultats attendus ?
Bonjour,
Je n'ai pas compris par contre l'utilité du point d'arrêt et des manœuvres à effectuer. Je vais tester.
L'utilité est de faire du pas à pas pour voir ce que fait la macro au franchissement de chaque ligne, et surtout de connaître l'état d'une variable à un moment précis.
*************************************************************************************************
Hier, vous avez suggéré d'utiliser un tableau unique. Ici, cela serait TabProduits. Quelle serait alors l'instruction (les instructions) à écrire pour l'utilisation de ce tableau et dans quelle procédure devrait-elle (devraient-elles) être créées ?
Attention, je vous donne simplement mon avis, mais je ne peux pas m'amuser à revoir tous les codes, je n'en finirai plus. Vous avez un fichier qui marche (celui de Bertrand) Pourquoi vouloir toujours compliquer les choses?
***************************************************************************************************
J'ai supprimé Agneau. Point d'arrêt sur la macro indiquée, à la ligne proposée. Retour sur la feuille Accueil, clic sur articles budgétaires. Sélection du type d'article. Arrêt sur le point d'arrêt : If cbType.listIndex=-1 then (passage de la souris sur cette ligne, cbType.listIndex=0); appui surla touche F8 : tbCodeType.value=Empty
(passage de la souris sur cette ligne, tbCodeType.value = ""). Cela est-il conforme aux résultats attendus ?
Mettre le point d'arrêt sur cette ligne: cbCatégorie.List = Range("Tab" & tbCodeType).Value
ainsi, vous pouvez voir la valeur de "tbCodeType" en passant la souris sur "tbCodeType.Value" de la ligne au-dessus.
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Résultat : ADB
Je ne vous demande pas de refaire tout le code mais uniquement de me proposer une instruction (et où la mettre) afin d'utiliser le tableau structuré unique TabProduits.
Bien sûr que j'ai bien compris qu'il ne faut pas refaire tout le code, mais les modifications à faire pour répondre à votre problème sont nombreuses, parce que ce principe est utilisé dans d'autres macros (j'en ai trouvé 6), il faudrait toutes les passer en revue et les modifier ainsi que celles qui en découlent, autant tout reprendre depuis le début, mais je ne m'en sens pas le courage et n'en ai ni le temps.
Je ne peux pas vous proposer une instruction puisque d'une part, il faut éplucher tout le code et d'autre part, parce que chaque instruction sera différente des autres, puisque on cherche tantôt un code, tantôt un produit, etc...
Enfin, je ne comprends pas, actuellement ce fichier est-il fonctionnel tel qu'il est ou pas? si oui, alors pourquoi changer?
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Effectivement, je ne savais pas que cela entrainerait autant de modifications. Donc, on reste sur son état actuel qui répond bien à mes besoins.
Merci pour votre compréhension.
Cdlt
- Messages
- 1'214
- Excel
- 2024 FR
- Inscrit
- 18/07/2014
- Emploi
- Retraité fonction publique territoriale
Je vais essayer de retrouver un vieux fichier dans lequel une tableau structuré unique était utilisé pour l'adapter, éventuellement, à mon nouveau fichier BUDGETS. Je n'ai pas retrouvé mon fichier.
Il reste une dernière solution : m'écrire l'instruction permettant de remplir le cbArticle en utilisant le tableau structuré unique TabProduits (Nom des colonnes :
| Nom produit | Code produit | Libellé produit | Clé produit |
en faisant référence, éventuellement au cb ou tb Type. Sans rien modifier dans les autres procédures concernées, me donner le nom des procédures que vous estimerez impactées. J'essaierai ainsi de me débrouiller seul, ce qui ne serait pas mal d'ailleurs pour m'améliorer.