[Access] formulaire interactif
Résolu
Utilisateur anonyme
-
blux Messages postés 27121 Date d'inscription Statut Modérateur Dernière intervention -
blux Messages postés 27121 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour à tous,
J'utilise Access 2002 et souhaite faire un formulaire 'intelligent'.
J'ai pas mal cherché, mais je ne crois pas avoir le mot pour exprimer ce que je veux.
Voici quand même ma question :
Je dispose d'une table contenant des infos sur des poissons.
Cette table contient 4 champs : Famille, genre, espece et le nom commun.
Une espèce est comprise dans un genre qui est compris dans une famille.
Dans mon formulaire, j'ai 4 zones de liste déroulantes correspondant à mes 4 champs.
Et je souhaite que quand je choisit une famille, dans la liste déroulante des genres, il n'y ai que les genres de cette famille.
La même chose, lorsque j'ai choisit un genre, dans le menu déroulant, je n'ai que les especes de ce genre dans le menu déroulant espece.
Pour le nom commun, on a une liste des noms communs sans doublon (ça, je sais faire : par l'intermédiaire d'une requête) et si un nom commun est 'commun' à 2 especes, j'aimerais avoir une combobox qui me permette de choisir entre les especes.
J'espère que je suis clair et que quelques personnes puissent m'aider, soit à trouver une solution, soit à me donner quelques pistes...
Mais là, je sèche :-/
Merci de m'avoir lu et au plaisir de vous lire
Hivan de Nouvelle Calédonie
J'utilise Access 2002 et souhaite faire un formulaire 'intelligent'.
J'ai pas mal cherché, mais je ne crois pas avoir le mot pour exprimer ce que je veux.
Voici quand même ma question :
Je dispose d'une table contenant des infos sur des poissons.
Cette table contient 4 champs : Famille, genre, espece et le nom commun.
Une espèce est comprise dans un genre qui est compris dans une famille.
Dans mon formulaire, j'ai 4 zones de liste déroulantes correspondant à mes 4 champs.
Et je souhaite que quand je choisit une famille, dans la liste déroulante des genres, il n'y ai que les genres de cette famille.
La même chose, lorsque j'ai choisit un genre, dans le menu déroulant, je n'ai que les especes de ce genre dans le menu déroulant espece.
Pour le nom commun, on a une liste des noms communs sans doublon (ça, je sais faire : par l'intermédiaire d'une requête) et si un nom commun est 'commun' à 2 especes, j'aimerais avoir une combobox qui me permette de choisir entre les especes.
J'espère que je suis clair et que quelques personnes puissent m'aider, soit à trouver une solution, soit à me donner quelques pistes...
Mais là, je sèche :-/
Merci de m'avoir lu et au plaisir de vous lire
Hivan de Nouvelle Calédonie
A voir également:
- [Access] formulaire interactif
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Sommaire interactif word - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Google Chrome
6 réponses
Hello,
Bon, ça avance un peu ;-)
Ais-je dit que j'utilise des listes déroulantes ?
voici mon code :
Private Sub Famille_AfterUpdate()
sql = "SELECT DISTINCT [Genre] FROM Domaines_nom_poissons " & _
"WHERE Famille= " & Famille & ";"
Genre.Value = Null
Genre.RowSource = sql
Genre.Requery
End Sub
Lorsque je clique sur le carré gris avec le triangle qui se trouve à gauche de la liste Genre, la fenêtre suivante apparait :
http://imageshack.com/f/b8sanstitregp1j
Et je dois copier la famille des poissons qui se trouve sur fond gris de la fenêtre pour la coller en dessous et cliquer sur OK
Et après, ça marche ;-)
Bon, je suis encore bloqué :-((
Pour rappel, j'ai dans une famille de poisson plusieurs genres...
Merci pour votre aide et bonne journée !
Hivan
Bon, ça avance un peu ;-)
Ais-je dit que j'utilise des listes déroulantes ?
voici mon code :
Private Sub Famille_AfterUpdate()
sql = "SELECT DISTINCT [Genre] FROM Domaines_nom_poissons " & _
"WHERE Famille= " & Famille & ";"
Genre.Value = Null
Genre.RowSource = sql
Genre.Requery
End Sub
Lorsque je clique sur le carré gris avec le triangle qui se trouve à gauche de la liste Genre, la fenêtre suivante apparait :
http://imageshack.com/f/b8sanstitregp1j
Et je dois copier la famille des poissons qui se trouve sur fond gris de la fenêtre pour la coller en dessous et cliquer sur OK
Et après, ça marche ;-)
Bon, je suis encore bloqué :-((
Pour rappel, j'ai dans une famille de poisson plusieurs genres...
Merci pour votre aide et bonne journée !
Hivan
J'ai trouver ;-) une petite erreur de guillements !!!
Voici le code qui marche :
Private Sub Famille_AfterUpdate()
sql = "SELECT DISTINCT [Genre] FROM Domaines_nom_poissons " & _
"WHERE Famille= """ & Famille & """;"
Genre.RowSource = sql
Genre.Requery
Genre = Genre.ItemData(0)
End Sub
Je met résolut dès que j'ai tout bien vérifié !!!
@ tout de suite loool
Hivan
Voici le code qui marche :
Private Sub Famille_AfterUpdate()
sql = "SELECT DISTINCT [Genre] FROM Domaines_nom_poissons " & _
"WHERE Famille= """ & Famille & """;"
Genre.RowSource = sql
Genre.Requery
Genre = Genre.ItemData(0)
End Sub
Je met résolut dès que j'ai tout bien vérifié !!!
@ tout de suite loool
Hivan
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Hello,
voici où j'en suis :
Private Sub Famille_AfterUpdate()
sql = "SELECT DISTINCT [Genre] FROM Domaines_nom_poissons " & _
"WHERE Famille = """ & Famille & """ ORDER BY Genre ASC ;"
Genre.RowSource = sql
Genre.Requery
Genre = Genre.ItemData(0)
sql = "SELECT DISTINCT [Espece] FROM Domaines_nom_poissons " & _
"WHERE Genre = """ & Genre & """ ORDER BY Espece ASC ;"
Espece.RowSource = sql
Espece.Requery
Espece = Espece.ItemData(0)
If IsNull(Famille) Then
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons ORDER BY Nom_commun ASC ;"
Else
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons " & _
"WHERE Espece = """ & Espece & """ ORDER BY Nom_commun ASC ;"
End If
NomCommun.RowSource = sql
NomCommun.Requery
NomCommun = NomCommun.ItemData(0)
End Sub
Le problème est dans la liste déroulante de Nomcommun :
lorsque j'ouvre mon formulaire, il y a bien les listes de toutes les familles de poisson et de tous les noms communs
si j'ajoute un poisson (et lui donne un nom commun) et que je veux en rajouter une, il n'y a plus que le nom commun du dernier poisson créer...
suis-je clair ?
Bon, je vais me coucher : il est 22h dans la pacifique sud et les moustiques sont de sortie looool
Merci pour votre aide
Hivan
voici où j'en suis :
Private Sub Famille_AfterUpdate()
sql = "SELECT DISTINCT [Genre] FROM Domaines_nom_poissons " & _
"WHERE Famille = """ & Famille & """ ORDER BY Genre ASC ;"
Genre.RowSource = sql
Genre.Requery
Genre = Genre.ItemData(0)
sql = "SELECT DISTINCT [Espece] FROM Domaines_nom_poissons " & _
"WHERE Genre = """ & Genre & """ ORDER BY Espece ASC ;"
Espece.RowSource = sql
Espece.Requery
Espece = Espece.ItemData(0)
If IsNull(Famille) Then
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons ORDER BY Nom_commun ASC ;"
Else
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons " & _
"WHERE Espece = """ & Espece & """ ORDER BY Nom_commun ASC ;"
End If
NomCommun.RowSource = sql
NomCommun.Requery
NomCommun = NomCommun.ItemData(0)
End Sub
Le problème est dans la liste déroulante de Nomcommun :
lorsque j'ouvre mon formulaire, il y a bien les listes de toutes les familles de poisson et de tous les noms communs
si j'ajoute un poisson (et lui donne un nom commun) et que je veux en rajouter une, il n'y a plus que le nom commun du dernier poisson créer...
suis-je clair ?
Bon, je vais me coucher : il est 22h dans la pacifique sud et les moustiques sont de sortie looool
Merci pour votre aide
Hivan
NomCommun = NomCommun.ItemData(0)
Ca sert à quoi ?
C'est sûrement pour ça que ta liste est limitée...
Un petit conseil en passant, évite les triplages de guillemets, préfère les apostrophes, c'est plus lisible :
A+ Blux
Ca sert à quoi ?
C'est sûrement pour ça que ta liste est limitée...
Un petit conseil en passant, évite les triplages de guillemets, préfère les apostrophes, c'est plus lisible :
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons " & _ "WHERE Espece = '" & Espece & "' ORDER BY Nom_commun ASC ;"--
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
Salut Blux,
Merci pour ta réponse ! J'ai bien mis des apostrophes, c'est plus lisible ;-)
NomCommun = NomCommun.ItemData(0)
Ca sert à sélectionner le premier élément de la liste...
en fait, j'ai compris qu'il modifiait la liste de l'enregistrement en cours et du prochain...
J'ai résolut le problème avec :
Private Sub NomCommun_Enter()
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons ORDER BY Nom_commun ASC ;"
NomCommun.RowSource = sql
NomCommun.Requery
End Sub
Un grand MERCI à toi Blux
C'est fonctionnel comme ça !
Merci pour ta réponse ! J'ai bien mis des apostrophes, c'est plus lisible ;-)
NomCommun = NomCommun.ItemData(0)
Ca sert à sélectionner le premier élément de la liste...
en fait, j'ai compris qu'il modifiait la liste de l'enregistrement en cours et du prochain...
J'ai résolut le problème avec :
Private Sub NomCommun_Enter()
sql = "SELECT DISTINCT [Nom_commun] FROM Domaines_nom_poissons ORDER BY Nom_commun ASC ;"
NomCommun.RowSource = sql
NomCommun.Requery
End Sub
Un grand MERCI à toi Blux
C'est fonctionnel comme ça !