ACCESS : DoCmd.OpenForm comment mettre des conditions à mon sens un peu particul

Résolu
cs_garoul Messages postés 5 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 27 avril 2007 - 24 avril 2007 à 20:44
cs_garoul Messages postés 5 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 27 avril 2007 - 25 avril 2007 à 14:32
Code à améliorer :

Private Sub listeRésultats_DblClick(Cancel As Integer)
   DoCmd.OpenForm "info_livre_disponible", acNormal, , " [id] = " & listeRésultats
 End Sub

Structure :
J'ai conçu un moteur de recherche  SQL qui donne les résultats sous cette forme

[id]   [livre]  [quantité]
1        aze       10
2        zea        5
3        aaa        11
4        eza        0

Le principe de fonctionnement :
Le principe consiste, en cliquant sur un résultat, d'avoir une nouvelle fenetre (formulaire info_livre_disponible) qui reprend les meme donnés que ceux du moteur de recherche avec  quelques champ en plus comme le Résumé par exemple. Mais le formulaire doit être différent selon qu'on a le livre disponible en stock ou pas !!

Ce que je veux avoir :
S'il vous plait aider moi à résoudre mon problème le plus rapidement possible. Il s'agit en fait d'avoir une sorte de condition à intégrer dans mon code pr ouvrir DEUX formulaire selon le cas

>> Si la quantité est > à 0 je garde le code càd le formulaire "info_livre_disponible" s'ouvre et il aura un bouton pr passer la commande du livre

>> Si par contre la quantité est <= 0 un autre formulaire qui portera le nom cette fois ci de "info_livre_non_disponible" qui s'ouvrira dans lequel y aura pas de bouton pr commande.

J'espère que mes explications sont clairs. Aidez moi svp ! en tt cas je crois que la commande DoCmd.OpenForm admet les conditions mé le problème c'est comment vérifier sur la colonne : Quantité (quantité < ou > à 0 ) dans chaque ligne lorsqu'on y clique dessus.

Merci d'avance
A voir également:

2 réponses

tbbuim1 Messages postés 940 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 3 février 2011 9
24 avril 2007 à 22:14
Avec une requête.
une fois que tu as trouvé la requête qui te permet de connaitre ta quantité.
Tu n'as plus qu'à faire un Dlookup dessus retournant le résultat de la requête sur l'évènement DblClick de listeRésultats.
Comme ceci:

Private Sub listeRésultats_DblClick(Cancel As Integer)
dim res as integer
res Dlookup("quantité","Livres",id " & Me.listeRésultats)
' champ résultat Table critère
msgbox res
select case res
case > 0: DoCmd.OpenForm "info_livre_disponible", acNormal, , " [id] = " & listeRésultats
case else: DoCmd.OpenForm "info_livre_non_disponible", acNormal, , " [id] = " & listeRésultats
end select
end sub
3
cs_garoul Messages postés 5 Date d'inscription lundi 13 juin 2005 Statut Membre Dernière intervention 27 avril 2007
25 avril 2007 à 14:32
Merci infiniment. T'as réponse marche à merveille  !

T'as ajouté tous ce qu'il me fallait.
la commande Dlookup pour retirer les variables qu'on désire, plus le select case pour gérer les conditions. Un travail d'expert. Bravo [auteurdetail.aspx?ID=55855 tbbuim1]
0
Rejoignez-nous