Bonjour,
Je ne connais pas ce tuto, peux-tu poster le lien éventuellement ?
Sinon pour utiliser un état en fonction de paramètres saisis dans un formulaire c'est assez simple.
1) créer le formulaire (je pense que c'est fait)
2) créer l'état avec une source de données sans paramètres.
3) dans le formulaire créer un bouton pour ouvrir l'état et sur l'événement Sur clic utiliser la commande suivante :
DoCmd.OpenReport "monreport", acViewPreview,,"conditions where"
Où :
monreport est le nom de l'état,
acViewPreview est le mode aperçu avant impression (à remplacer par acviewnormal pour une impression directe.
"conditions where" sont les conditions au format SQL WHERE.
Voici un exemple de conditions :
le champ Table1.ChampType doit être égal au choix de la liste listeType du formulaire. Ce paramètre est de format Texte.
"Table1.ChampType=""" & me.listeType & """"
le champ Table1.ChampAge doit être inférieur à la valeur choisie dans la liste Listetype. Ici c'est une valeur numérique.
"Table1.ChampAge<" & me.listeAge & ""
Enfin les 2 ensemble :
"Table1.ChampType=""" & me.listeType & """ AND Table1.ChampAge<" & me.listeAge & ""
Le résultat :
DoCmd.OpenReport "monreport", acViewPreview,,"Table1.ChampType=""" & me.listeType & """ AND Table1.ChampAge<" & me.listeAge & ""
Pour cacher le formulaire il faut mettre cette instruction à la suite :
Par contre il va rester ouvert jusqu'à sa fermeture ou à la fermeture de l'application. Donc soit tu le laisse ouvert et l'utilisateur le fermera soit tu décide qu'il n'est plus utile et tu le ferme après la commande d'ouverture de l'état, comme ceci :
docmd.close acform,me.name
Cordialement,
Partager