|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
bonjour,
lorsque l'on ouvre un formulaire avec l'objet docmd.openform, il y a une rubrique "where" peut-on placer deux conditions das cette rubrique, si oui quelle est la syntaxe sur deux condition (par exemple un n° de série et une référence d'article merci |
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Inscription : août 2006 Messages : 1 435 ![]() |
Bonsoir,
un exemple avec 2 critères Code :
|
||
|
|
10
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
merci pour ces éléments mais malheureusement ils ne me permettent pas de résoudre mon problème
En effet je double clique sur le champ d'un sous formulaire pour ouvrir un formulaire en fonction d'un n° de phase. Cette ouverture se passe correctement , mais cette ouverture devrait prendre un second élément et je n'arrive donc pas à faire une clause avec deux conditions Dans ta solution tu connais au départ les éléments de tri, mais mois il dépendent d'un choix aléatoire merci |
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Inscription : janvier 2011 Messages : 309 ![]() |
Bonjour,
Je pense qu'il faut tout simplement mettre dans ton filtre la référence aux deux champs qui serviront de critères : Au lieu d'utiliser "Like" tu mets par ex : Code :
Docmd.openform "MonDeuxièmeFormulaire",,"[Champ1DuDeuxièmeFormulaire]=" & [Champ1DuPremierFormulaire]" AND "[Champ2DuDeuxièmeFormulaire]=" & [Champ2DuPremierFormulaire]" Le deuxième guillemet fermant à la suite du signe = et rajoutant un "&" ensuite et non l'inverse. Suivant le cas tu mets soit Me.[nomduchamp] comme référence, soit le chemin complet : forms![NomduPremierFormulaire]![NomDuPremierChampCritère] dans l'event click de ton bouton ou procédure. Mais il se peut qu'il n'y ai pas de correspondance dans un des deux champs de critère, il faudra gérer cette éventualité ... C'est juste pour que tu vois la logique à appliquer |
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
merci pour cette réponse, dés que j'ai le temps j'essaie cette solution
|
|
|
00
|
|
|
#6 | ||
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
j'ai essayé mais cela ne fonctionne pas, j'ai mis un espion et j'ai pu remarquer qu'il prenait les bonnes données. Cependant il semble y avoir une incompatibilité de type (un des champ est une chaine , l'autre un numérique)
Code :
|
||
|
|
00
|
|
|
#7 |
|
Membre régulier
![]() Inscription : janvier 2011 Messages : 309 ![]() |
Tu n'as pas suivi le conseil :
Il faut mettre : Le guillemet se met après le signe égal... Essaye déjà comme ça, on verra ensuite pour le deuxième critère... |
|
|
00
|
|
|
#8 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
MERCI DE NOUVEAU
Effectivement cela |
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
merci, mille excuse pour le message précèdent qui est parti avant que je ne puisse le finir
avec ta syntaxe ça fonctionne bien avec le premier élément, comment faire pour faire passer le second ? merci |
|
|
00
|
|
|
#10 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
hier soir j'ai donc essayé le code que tu m'a donné et ça fonctionne pour un critère
Ce matin j'essaie pour les deux critères qui m'intéresse , j'ai donc reconduit le code avec un "AND" Mais j'obtiens un message d'erreur d'exécution 13- incompatibilité de type NUM_OPE est numérique et NUM_SERIE est texte J'ai donc essayer de transformer le NUM_SERIE en INT (cf code) mais j'obtiens toujours le même message Code :
DoCmd.OpenForm "formlier", , , "[NUM_OPE]= " & [NUM_OPE] And (CInt("[NUM_SERIE]=") & (CInt([NUM_SERIE]))) |
|
|
00
|
|
|
#11 |
|
Membre régulier
![]() Inscription : janvier 2011 Messages : 309 ![]() |
Essaies avec :
Code :
And "CInt([NUM_SERIE])=" & CInt([NUM_SERIE]) Code :
And "CInt(Forms![MonForm2].[NUM_SERIE])=" & CInt(Forms![MonForm1].[NUM_SERIE]) Attention de ne pas englober ni le signe égal ni le "&" dans la parenthèse !, vérifies bien les parenthèses fermantes aussi, tu en mettais deux de trop ... |
|
|
00
|
|
|
#12 |
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
j'ai essayé avec la premiere SOLUTION, j'obtiens un message d'erreur du type "DEPASSEMENT DE CAPACITE"
ERREUR 6 Pour la seconde y-a-til un ordre dans l'appel des formulaires Faut-il mettre à gauche le départ et à droite l'arrivée, ou le contraire ou bien cela n'a aucune importance merci |
|
|
00
|
|
|
#13 | ||
|
Nouveau Membre du Club
![]() Inscription : mai 2008 Messages : 105 ![]() |
Ouf§§§
j'y suis arrivé, en parcourant les différents post je suis tombé sur un sujet identique que j'ai arrangé La question de départ: Comment ouvrir un formulaire à partir d'un autre formulaire ou sous formalaire avec 2 critères (et de type différent) Code :
"Ensuite tu dois t'assurer que les critères sont bien de type texte comme tu le spécifie en utilisant les simples cote. Si dans la table elles sont de type numérique tu dois enlever les cotes." Merci à tous pour cette aide |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com