|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Bonjour à tous,
Après quelques difficultés je viens de finir un formulaire de recherche multicritère comme celui joint en pièce jointe (issue des Tutos). Je vous remercie de votre aide au travers ce Tutos et de la base exemple téléchargeable qui m'a permis de mieux visualisé. Maintenant, j'ai ajouté dans le même formulaire une seconde recherche multicritères avec un second sous formulaire. Le but de cet ajout est de pouvoir comparer le ou les champs du sous formulaire 1 et du sous formulaire 2 de manière à cibler le ou les champs diffférents et permettre à l'utilisateur de modifier les champs qui vont bien. Je voudrais savoir si il est possible de faire de la mise en forme conditionnelle sur ces deux sous formulaires ? Si oui pouvez vous me guider sur le sujet même si c'est par du code ? SI il y a un Tuto que je n'aurais pas vu je suis preneur. En vous remerciant par avance de votre aide Jérôme |
|
|
00
|
|
|
#2 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Bonsoir,
Est-il possible d'avoir un peu d'aide de piste de réalisation SVP ? Merci par avance Jérôme |
|
|
00
|
|
|
#3 | |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Citation:
Cependant, il me semble qu'il te faudra avoir recours à du code. Il nous faut cependant matérialiser ta problématique avec ton formulaire de recherche. Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Bonsoir,
Alors la BD que j'ai donné dans le poste c'est pas celle du tuto enfin c'est l'arrangement que j'en fait pour mon utilisation. En effet dans le formulaire principale j'y ai mis deux sous formulaire avec deux liste de choix multi critère. j'ai doublé le tuto en fait. Car mon besoin, ou bien ce que je souhaite faire c'est un premier choix dans la première liste de choix qui s'affiche dans le sous formulaire 1 (c'est mon point de départ). Ensuite sur la seconde liste de choix (toujours à 4 champs possible) je souhaite faire un autre choix (normalement il doit être différent) qui s'affichera dans le sous formulaire 2. Du coup dans le sous formulaire 1 je vais avoir un enchainement de champs et dans le sous formulaire 2 d'autres valeurs de ces mêmes champs. Et je souhaite mettre en surbrillance ou bien en changeant la couleur de la police, gras etc. les champs qui varient en valeurs du sous formulaire 1 au sous formulaire 2. Au départ je voulais faire de la mise en forme conditionnelle comme on pourrait le faire entre deux colonne sous Excel mais cela ne marchait pas entre mes deux sous formulaire. J'espère que c'est un peu plus claire sur ce que j'aimerais faire avec ces 2 sous formulaires présent dans le même formulaire. En vous remerciant par avanace |
|
|
00
|
|
|
#5 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Je comprends mieux le principe et ton objectif mais, je suis vraiment navré parce que la base que j'ai téléchargée à partir de ton fil est celle que j'ai mise à disposition avec le tuto. ( )Je n'y retrouve pas le formulaire principal avec ses deux sous formulaires
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
autant pour moi aussi je pense que j'ai fait boulette là ....Bon je viens de mettre à l'instant la vrai version que j'ai retravaillé avec la présence des 2 sous formulaires. Dans la version finale j'aurais environ 80 champs à comparer d'un sous formulaire à l'autre. Comme cela deviendra pas forcément très exploitable je pense que je ferais un Etat avec ces données. Je n'ai pas encore réfléchie à la question pour le après. Mais en écrivant, j'ai un autre question au fur et à mesure que le choix du filtre se fait est il possible de mettre dans un autre sous formulaire n° 3 le résultat des deux premiers sous formulaires mais avec affichage uniquement sur les champs qui ne sont pas égaux ? Merci encore |
|
|
00
|
|
|
#7 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Je t'avoue ne pas trop comprendre l'objectif. ( )Peux-tu donner une exemple de filtres que tu serai amené à poser et quelles seraient les valeurs à mettre en évidence. ![]() J'ai fait plusieurs essais, (les filtres fonctionnent parfaitement ) mais devant le résultat, je ne comprends pas ce qu'il y a à faire.
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Il est vrai que je n'ai pas tout mis dans la base de travail que je suis entrain de faire.
La totalité des champs à afficher dans le sous formulaire le seront par la suite quand le périmètre limité actuel sera fonctionnel. Dans la version final il devra y avoir la totalité des champs présents dans la table T_MATRICE. Ensuite les 4 valeurs de filtre (ARTICLE, SOURCE, POSITION, GROUPE) sont des point d'entrées pour obtenir les autres champs de la table T_MATRICE qui sont en fait des règles de paramétrage (au total 75 règles dans T_MATRICE) Dans le sous formulaire de gauche (que je vais nommer paramétrage actuel) je veux choisir le paramétrage dans lequel je me trouve via les filtres et n'afficher que ce paramétrage. Dans le sous formulaire de droite (que je vais nommer paramétrage souhaité) je veux choisir le paramétrage que je souhaite mettre via les filtres aussi et n'afficher que celui ci. Entre la version "actuel" et la version "souhaitée" il y a des paramètres (champs) qui ne bouge pas et d'autre qui changent. Ceux qui changent, je veux les mettre en surbrillance, gras, couleurs et autres mise en forme possible de manière à cibler visuellement la différence entre les deux sous formulaires. Cela permettra à l'utilisateur de se focaliser que sur ces champs là. Exemple sur le fichier Excel joint. BD mise à jour |
|
|
00
|
|
|
#9 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Voila une piste de réflexion : 1. Dans le sous formulaire SF_MATRICEb, j'ai ajouté à chaque contrôle une zone de texte indépendante nommée txt0, txt1 ... 2. J'ai associé à chaque Contrôle dépendant, un format conditionnel base sur les zones de texte indépendantes associées. 3. Sur le bouton "Comparer !", j'ai implanté une procédure évènementielle qui affecte 0 ou 1 aux zones de textes indépendantes. Je ne sais pas si c'est une solution, à creuser... ![]() Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#10 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Ok je télécharge ton fichier joint je regarde et te dirais ce que j'arrive à faire.
|
|
|
00
|
|
|
#11 | ||
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() En fait j'ai repris la base et développé d'une autre façon. Je n'étais pas trop emballé par le système du contrôle supplémentaire. Tu verras, que j'ai supprimé les contrôles indépendants txt0, txt1 ... mais j'ai renommé les contrôles du second sous-formulaire txt0, txt1 ... Dans la procédure, j'interviens directement sur l couleur de fond et le caractère gras dans le contrôle concerné Code VBA :
J'ai également compléter la macro de réinitialisation des contrôles lors de l'effacement des filtres Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
||
|
|
00
|
|
|
#12 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Bonjour,
J'ai regardé hier soir la base avec les contrôles supplémentaires txt. L'idée de base est là mais il est vrai que c'est pas le plus sexy Par contre ce que j'ai pu voir la comparaison est faite directement avec les filtres. et sur la version d'hier si il y avait un filtre à tous il y avait un bug. Du coup c'est pas un contrôle sur le résultat affiché mais sur les conditions de départs. C'est en fait ça qui me gène car ensuite je voulais mettre plusieurs champs supplémentaire dans les sous formulaires issue de T_matrice pour avoir la règle au complet à l'écran. J'espère que je me fais comprendre je vais préparer un truc proche de la version final alors. Je tente de regarder dans la journée la nouvelle version et je te dis à nouveau ce que j'en pense alors ![]() Merci beaucoup |
|
|
00
|
|
|
#13 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Re Bonjour
Donc je viens de regarder un peu le travail que tu as fait et c'est déjà plus que ce que j'aurais pu faire moi même. Je pense que j'ai compris le principe mais les comparaison se font uniquement sur les champs filtrés en résultat dans les sous formulaires. Dans la base que je te redonne j'ai ajouté un des multiples champs que je souhaite mettre en plus (MODE_SORTIE) et je souhaiterais aussi que la comparaison se fasse aussi sur ce type de champs si ce n'est pas trop abusé. Les champs que je rajoute, sont issues des requêtes R_MATRICE et R_MATRICEb à condition que je les ajoute bien entendu ce qui n'est pas encore le cas. Mais l'esprit est tout à fait là et c'est certain que l'absence des 0 et 1 est bien mieux pour l'utilisateur
|
|
|
00
|
|
|
#14 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() J'ai repris la procédure du bouton "Comparer" de manière à moduler le nombre de contrôles dans le sous-formulaire SF_MATRICEb Cependant lors de la création de ton sous-formulaire chaque nouveau contrôle doit être nommé "txtN" où N correspond à la position du contrôle dans le sous-formulaire -1 car l'index d' Access commence par 0 (et non 1). Ainsi, le contrôle "Mode de Sortie" s'appelle txt4 malgré qu'il soit le 5ème contrôle dans le sous-formulaire. D'autre part, il est impératif que l'ordre des champs des deux requêtes sources des sous-formulaires soit identique et correspondent à l’ordre des contrôles dans les sous formulaires (au risque d'avoir des comparaisons erronées) Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#15 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Ok je récupère ceci et regarde tout ça entre deux rendez vous
Qu'est-ce que tu es matinal par contre je n'arrive pas à te suivre dans le rythme de la journée ou alors il y a un décallage horaire entre nous.Merci déjà pour ce que tu as fait
|
|
|
00
|
|
|
#16 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Bonsoir,
J'ai regardé le boulot sur la BD c'est vraiment super cela correspond bien à ce que je souhaitais faire. J'ai fait quelques modifications et surtout j'ai bien compris le code et les macros pour ajout de champs supplémentaires etc... Du coup j'ai voulu mettre en route l'impression du formulaire mais là je tourne en rond !!! En effet, je n'ai que les ID de mes champs qui apparaissent dans la partie filtre !!! J'ai fait des manipulations dans tous les sens mais en vain je retombe toujours sur l'affichage des ID. Ensuite je souhaite un formulaire pour création exceptionnelle de règle supplémentaire, mais surtout pour me permettre de mettre à jour les évolution de règles. Est-il possible de bloquer le nombre d'enregistrement potssible ? pour être certain qu'aucune règle de plus ne soit ajoutée. Ensuite pour ne pas autoriser de saisie de saisie par les utilisateur je peux mettre un MdP peut être c'est le plus simple et le plus sur non ? En te remerciant |
|
|
00
|
|
|
#17 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
Bonjour,
Et bien je n'arrive plus à éditer mes post donc je post à nouveau à la suite Je te donne la BDD et l'impression état que je n'arrive pas à mettre comme il se doit. A savoir que ce sont les ID de mes champs qui sorte et non le nom correspondant à l'ID Ensuite j'avais un second sujet sur cet outil : Je souhaite faire un formulaire pour la création exceptionnelle de règle supplémentaire, mais surtout pour me permettre de mettre à jour les règles actuelles. Est-il possible de bloquer le nombre d'enregistrement total dans ma table T_MATRICE (stockage des règles) ? Pour être certain qu'aucune règle de plus ne soit ajoutée par l'utilisateur mais juste par l'administrateur. Ensuite pour ne pas autoriser de saisie par les utilisateur je peux mettre un MdP peut être c'est le plus simple et le plus sur non ? J'aimerais vraiment pouvoir faire en sorte que l'utilisateur n'accède pas au table et ne puisse pas renseigner des données dans ces tables : juste l'administrateur |
|
|
00
|
|
|
#18 | ||
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Il y a une petite erreur dans le tuto à partir duquel tu t'es inspiré pour faire ton formulaire. pour faire appraitre tes filtres, il faut corriger le numéro de colonne dans la macro d'impression : au lieu de : Code Macro Access :
Mettre : Code Macro Access :
VraiFaux([Formulaires]![F_MATRICE]![cboARTICLE]=0;"Pas de critère sur ce champ";[Formulaires]![F_MATRICE]![cboARTICLE].[column](0)) Désolé Pour le reste, je ne comprends pas bien et devrait faire normalemnt l'objet d'un autre post ( problème par discussion) Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
||
|
|
00
|
|
|
#19 |
|
Invité régulier
![]() Inscription : septembre 2011 Messages : 44 ![]() |
bonjour,
Merci de ta réponse je vais de ce pas modifier ceci. J'ai essayer 1 puis 2 en numéro de colonne mais en vain et je n'ai même pas pensé à 0 Oui je te l'accorde l'autre sujet est un peu en dehors de celui ci mais pour moi dans la continuité c'est pour ça je vais reformuler et je ferais un autre sujet. EDIT : Bien j'ai modifié le numéro de la colonne par le 0 et au miracle cela marche à merveille merci beaucoup. ![]() Ensuite j'arrive parfaitement à faire mes états même en regroupant les deux filtres dans un même état. [Mais je souhaiterais faire apparaitre dans cet état la mise en forme du résultat de la comparaison du sous formulaire et là je coince.] j'y suis arrivé Peux-ton bloquer les boutons "impression" si le filtre correspond n'a pas été choisi ? |
|
|
00
|
|
|
#20 | ||
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Par une petite condition sur le clic du bouton qui exécute le filtre. Code VBA :
Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com