|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
Bonjour à tous,
J'aurais besoin d'un coup de main pour simplifier ma requête C52 à C1 car elle ne rentre pas dans l'éditeur. Comment la simplifier en sql pour que ma requête vraifaux entre dans l'éditeur : merci pour votre aide Code :
Variation:VraiFaux([C52]="RAS";"1";VraiFaux([C52]="CC";"2";VraiFaux([C52]="X";"3";VraiFaux([C51]="RAS";"1";VraiFaux([C51]="CC";"2";VraiFaux([C51]="X";"3";VraiFaux([C50]="RAS";"1";VraiFaux([C50]="CC";"2";VraiFaux([C50]="X";"3";VraiFaux([C49]="RAS";"1";VraiFaux([C49]="CC";"2";VraiFaux([C49]="X";"3";VraiFaux([C48]="RAS";"1";VraiFaux([C48]="CC";"2";VraiFaux([C48]="X";"3";VraiFaux([C47]="RAS";"1";VraiFaux([C47]="CC";"2";VraiFaux([C47]="X";"3";VraiFaux([C46]="RAS";"1";VraiFaux([C46]="CC";"2";VraiFaux([C46]="X";"3";VraiFaux([C45]="RAS";"1";VraiFaux([C45]="CC";"2";VraiFaux([C45]="X";"3" ; VraiFaux([C44]="RAS";"1";VraiFaux([C44]="CC";"2";VraiFaux([C44]="X";"3";VraiFaux([C42]="RAS";"1";VraiFaux([C42]="CC";"2";VraiFaux([C42]="X";"3";VraiFaux([C41]="RAS";"1";VraiFaux([C41]="CC";"2";VraiFaux([C41]="X";"3";VraiFaux([C40]="RAS";"1";VraiFaux([C40]="CC";"2";VraiFaux([C40]="X";"3";VraiFaux([C39]="RAS";"1";VraiFaux([C39]="CC";"2";VraiFaux([C39]="X";"3";VraiFaux([C38]="RAS";"1";VraiFaux([C38]="CC";"2";VraiFaux([C38]="X";"3";VraiFaux([C37]="RAS";"1";VraiFaux([C37]="CC";"2";VraiFaux([C37]="X";"3";VraiFaux([C36]="RAS";"1";VraiFaux([C36]="CC";"2";VraiFaux([C36]="X";"3";VraiFaux([C35]="RAS";"1";VraiFaux([C35]="CC";"2";VraiFaux([C35]="X";"3";VraiFaux([C34]="RAS";"1";VraiFaux([C34]="CC";"2";VraiFaux([C34]="X";"3";VraiFaux([C33]="RAS";"1";VraiFaux([C33]="CC";"2";VraiFaux([C33]="X";"3";VraiFaux([C32]="RAS";"1";VraiFaux([C32]="CC";"2";VraiFaux([C32]="X";"3";VraiFaux([C31]="RAS";"1";VraiFaux([C31]="CC";"2";VraiFaux([C31]="X";"3";VraiFaux([C30]="RAS";"1";VraiFaux([C30]="CC";"2";VraiFaux([C30]="X";"3";VraiFaux([C29]="RAS";"1";VraiFaux([C29]="CC";"2";VraiFaux([C29]="X";"3";VraiFaux([C28]="RAS";"1";VraiFaux([C28]="CC";"2";VraiFaux([C28]="X";"3";VraiFaux([C27]="RAS";"1";VraiFaux([C27]="CC";"2";VraiFaux([C27]="X";"3";VraiFaux([C26]="RAS";"1";VraiFaux([C26]="CC";"2";VraiFaux([C26]="X";"3";VraiFaux([C25]="RAS";"1";VraiFaux([C25]="CC";"2";VraiFaux([C25]="X";"3";VraiFaux([C24]="RAS";"1";VraiFaux([C24]="CC";"2";VraiFaux([C24]="X";"3";VraiFaux([C23]="RAS";"1";VraiFaux([C23]="CC";"2";VraiFaux([C23]="X";"3"; VraiFaux([C22]="RAS";"1";VraiFaux([C22]="CC";"2";VraiFaux([C22]="X";"3"; VraiFaux([C21]="RAS";"1";VraiFaux([C21]="CC";"2";VraiFaux([C21]="X";"3";VraiFaux([C20]="RAS";"1";VraiFaux([C20]="CC";"2";VraiFaux([C20]="X";"3"; VraiFaux([C19]="RAS";"1";VraiFaux([C19]="CC";"2";VraiFaux([C19]="X";"3";VraiFaux([C18]="RAS";"1";VraiFaux([C18]="CC";"2";VraiFaux([C18]="X";"3"; VraiFaux([C17]="RAS";"1";VraiFaux([C17]="CC";"2";VraiFaux([C17]="X";"3";VraiFaux([C16]="RAS";"1";VraiFaux([C16]="CC";"2";VraiFaux([C16]="X";"3"; VraiFaux([C15]="RAS";"1";VraiFaux([C15]="CC";"2";VraiFaux([C15]="X";"3";VraiFaux([C14]="RAS";"1";VraiFaux([C14]="CC";"2";VraiFaux([C14]="X";"3"; VraiFaux([C13]="RAS";"1";VraiFaux([C13]="CC";"2";VraiFaux([C13]="X";"3";VraiFaux([C12]="RAS";"1";VraiFaux([C12]="CC";"2";VraiFaux([C12]="X";"3"; VraiFaux([C11]="RAS";"1";VraiFaux([C11]="CC";"2";VraiFaux([C11]="X";"3";VraiFaux([C10]="RAS";"1";VraiFaux([C10]="CC";"2";VraiFaux([C10]="X";"3"; VraiFaux([C9]="RAS";"1";VraiFaux([C9]="CC";"2";VraiFaux([C9]="X";"3";VraiFaux([C8]="RAS";"1";VraiFaux([C8]="CC";"2";VraiFaux([C8]="X";"3"; VraiFaux([C7]="RAS";"1";VraiFaux([C7]="CC";"2";VraiFaux([C7]="X";"3";VraiFaux([C6]="RAS";"1";VraiFaux([C6]="CC";"2";VraiFaux([C6]="X";"3"; VraiFaux([C5]="RAS";"1";VraiFaux([C5]="CC";"2";VraiFaux([C5]="X";"3";VraiFaux([C4]="RAS";"1";VraiFaux([C4]="CC";"2";VraiFaux([C4]="X";"3";VraiFaux([C3]="RAS";"1";VraiFaux([C3]="CC";"2";VraiFaux([C3]="X";"3";VraiFaux([C2]="RAS";"1";VraiFaux([C2]="CC";"2";VraiFaux([C2]="X";"3";VraiFaux([C1]="RAS";"1";VraiFaux([C1]="CC";"2";VraiFaux([C1]="X";"3";""))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
|
|
00
|
|
|
#2 |
![]() ![]() Denis Développeur informatique Inscription : août 2004 Messages : 3 206 ![]() |
Salut,
Utilise la fonction switch (PremVrai): Code :
Variation:PremVrai([C52]="RAS";"1";[C52]="CC";"2";...)
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp. Bon développement ! Mes tutoriels et contributions sur ma page perso: Ma page personnelle |
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
Merci User pour l'info,
Mais comment insérer un switch j'utilise rarement cette fonction sachant qu'avec mon vraifaux c'est classer par ordre Pouvez vous m'aider ? |
|
|
00
|
|
|
#4 |
![]() ![]() Denis Développeur informatique Inscription : août 2004 Messages : 3 206 ![]() |
C'est plus simple qu'un vraifaux :
par exemple: Code :
Variation:PremVrai([C52]="RAS";"1";[C52]="CC";"2";[C52]="X";"3") si [C52]="RAS" alors Variation="1" sinon si [C52]="CC" alors Variation="2" sinon si [C52]="X" alors Variation="3" etc... A+
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp. Bon développement ! Mes tutoriels et contributions sur ma page perso: Ma page personnelle |
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
MERCI User pour les explications,
Comment faire la synthaxe pour les ajouts de C52 jusqu'a C1 ? Dois-je utiliser 52 praimVrai les uns à la suite ? si oui comment ? car j'utilise cela dans un champ d'une requête exemple Variation :......... à combien de caratère je suis limité ? cela va passer ? Code :
Variation :PremVrai([C52]="RAS";"1";[C52]="CC";"2";[C52]="X";"3";PremVrai([C51]="RAS";"1";[C51]="CC";"2";[C51]="X";"3")[/ |
|
|
00
|
|
|
#6 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
au bout de C49 j'ai un message synthaxe trop complexe
comment faire ?? |
|
|
00
|
|
|
#7 |
![]() ![]() |
Bonjour
Vu ce que tu demandes je verrais cela différemment, et ces deux méthodes sont plus simples et plus faciles à maintenir : 1 - Une table avec deux champs et une liaison sur cette table pour avoir la correspondance. 2 - Une fonction utilisant un Select Case et qui te renvois la valeur fournie. Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
00
|
|
|
#8 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
merci pour l'info mais avez vous un exemple simple ? je trouve la réponse de User très bien elle correspond tout à fait , mais limitée
Merci pour votre aide |
|
|
00
|
|
|
#9 | |
![]() ![]() Denis Développeur informatique Inscription : août 2004 Messages : 3 206 ![]() |
Citation:
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp. Bon développement ! Mes tutoriels et contributions sur ma page perso: Ma page personnelle |
|
|
00
|
|
|
#10 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
Bonjour,
Merci pour votre aide mais je tourne en rond j'ai essayé plusieurs manip pas très clair. Quand je regarde la problématique cela n'a rien d'extraordianaire c'est simplement faire un ajout avec la fonction Premvrai en ordre décroissant de C52 à C1 ? mais access est limité ? peut on faire un réglage pour augmenter ? Code :
Variation:PremVrai([C52]="RAS";"1";[C52]="CC";"2";[C52]="X";"3";[C51]="RAS";"1";[C51]="CC";"2";[C51]="X";"3";[C50]="RAS";"1";[C50]="CC";"2";[C50]="X";"3";[C49]="RAS";"1";[C49]="CC";"2";[C49]="X";"3";[C48]="RAS";"1";[C48]="CC";"2";[C48]="X";"3";[C47]="RAS";"1";[C47]="CC";"2";[C47]="X";"3";[C46]="RAS";"1";[C46]="CC";"2";[C46]="X";"3";[C45]="RAS";"1";[C45]="CC";"2";[C45]="X";"3";[C44]="RAS";"1";[C44]="CC";"2";[C44]="X";"3";[C43]="RAS";"1";[C43]="CC";"2";[C43]="X";"3") Merci à vous les experts |
|
|
00
|
|
|
#11 |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour à tous,
La solution indiquée par Philippe paraît plus judicieuse, dans ton cas. En effet, nous pouvons comprendre que la fonction PremVrai n'accepte pas une liste infinie !... ce serait in-maintenable. Et, d'un point de vue conceptuel, à partir d'un certain nombre de possibilités, une table s'impose. C'est un peu comme les champs multi-valués (dont je me méfie...) : une table s'impose si trop de valeurs sont indiquées. Reste, effectivement, à définir le un certain nombre de possibilités et le trop de valeurs : la limite est floue. Bref, pour la solution précise :
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
00
|
|
|
#12 |
![]() ![]() Denis Développeur informatique Inscription : août 2004 Messages : 3 206 ![]() |
En fait c'est typique d'1 problème de conception, je t'en est parlé au début quand je t'ai aidé à construire ta requête avec les S1 à S52:
les contenus de C52 à C1 qui apparaissent horizontalement devrait apparaître verticalement sur plusieurs lignes d'1 même colonne dans 1 table, et les contenus S1 à S52 aussi. A mon avis il faut revoir la conception de ta base : Toute solution autre proposée s'apparente plus à du bricolage pour récupérer ce défaut de ta base
__________________
Merci de ne pas poster sur mon profil pour des problèmes techniques. Pour celà vous pouvez utiliser le forum ou m'envoyer un mp. Bon développement ! Mes tutoriels et contributions sur ma page perso: Ma page personnelle |
|
00
|
|
|
#13 | |
![]() ![]() |
Re
Citation:
![]() @ Richard_35 : merci d'avoir traduit mes pensées, et à mon avis la solution la plus simple et la plus facile à maintenir, c'est bien sûr un palliatif pour résoudre le problème actuel. Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
|
00
|
|
|
#14 | |
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Citation:
@Debutant10 : en règle générale, tout défaut de conception entraîne, pour y pallier, l'écriture de code supplémentaire (VBA ou SQL), donc une maintenabilité plus délicate.
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
|
|
|
00
|
|
|
#15 |
![]() ![]() |
Re
Je viens de relire le message, j'ai un petit doute sur tout ce qui vient d'être dit. Et je pense que comme le dit User, le fait que tu fasses le test sur plusieurs champs pour tout afficher dans un seul champ de ta requête implique que tu donnes quelques explications sur la conception de ta base. Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
00
|
|
|
#16 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
Bonjour,
J'ai crée une table T1 avec les champs suivants : - Code_Texte (clé primaire) - Valeur_Numerique_Correspondante ensuite , j'ai ajouté T1 à ma requête en la liant par les champs qui vont bien , j'ai récupérer la Valeur_Numerique_Correspondante (1, 2, 3, etc...) au Code_Texte ("RAS", "CC", etc...). J'ai fais la liaison par contre le petit pb : j'ai pas réussi à saisir à faire Une fonction utilisant un Select Case et qui renvois la valeur fournie. J'ai réussi à faire de C52 jusqu'à C49 mais pas à C1 j'ai besoin d'un coup de main pour voir ou sa bloque voici le détail dans mon fichier merci pour votre aide cela me permet d'avancer. |
|
|
00
|
|
|
#17 |
![]() ![]() |
Re
Je viens de regarder ta base (essayes la prochaine fois de l'enregistrer au format mdb, car tout le monde ne peux lire ce format). Etant donné la conception actuel de ta base, cela va être une horreur à gérer, à moins de passer par un code VBA qui va parcourir tous tes champs Pour moi il faut t'arrêter là et revoir entièrement la conception (je sais je me répète). Philppe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon ![]() Si vous pensez commencer sans un livre, oublier : livres pour débuter Vous pouvez consulter mes articles sur Access et PowerPoint Le blog Office. Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas. |
|
|
00
|
|
|
#18 | ||
|
Expert Confirmé
![]() Inscription : juillet 2007 Messages : 2 176 ![]() |
Bonjour à tous,
Citation:
D'autre part, je ne connais pas VBA et ne pourrais donc t'aider sur l'écriture de fonction. Enfin, il me semble que, si tu as pu utiliser la table de correspondance, ton problème initial est résolu... à moins que d'autres surgissent et qu'il faille Citation:
__________________
Dis-nous et à bientôt, Richard. ---------------------------------------------------------------------------------------------- . et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
|
||
|
|
00
|
|
|
#19 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
Bonjour Philippe,
Quel est le code VBA qui pourrais parcourir tous les champs ? et si retrouve l'un des trois nom alors.... copie Soit 1 ou 2 ou 3 ? merci pour votre éclairage sur le sujet |
|
|
00
|
|
|
#20 |
|
Futur Membre du Club
![]() Inscription : janvier 2008 Messages : 304 ![]() |
Bonjour à tous
peut-on faire une boucle en vba comme excel ? Quel est le code VBA qui pourrais parcourir tous les champs de C52à C1 ? et si retrouve l'un des trois nom RAS ou X ou CC alors.... copie Soit 1 ou 2 ou 3 dans le champs variance ? J'aurai besoin SIMPLEMENT DE CELA merci pour votre éclairage les experts sur le sujet |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com