OVH Cloud OVH Cloud

Liste deroulante de table

7 réponses
Avatar
David
Bonjour
Comment une faire une liste deroulante de table
--
A+
David

7 réponses

Avatar
ze Titi
Bonjour David

L'assistant te permet de créer des listes déroulantes basées sur
requêtes, tables ou listes de valeurs... Je ne comprends pas donc bien
l'intérêt de cette question...

Eclaire-nous !

Dans ton message
Bonjour
Comment une faire une liste deroulante de table


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
Claude cinéphile
Salut David,

Personnellement j'utilise soit la propriété "Contenu" du champ du formulaire
(l faut définir la table et la où les colonnes à afficher),
soit un sous-formulaire en mode continu.

Tout dépend de l'utilisation prévue de la liste déroulante de la table :
"aide à la saisie, affichage des enregistrements liés, autre ?

Cordialement.

Bonjour
Comment une faire une liste deroulante de table
--
A+
David


Avatar
Eric
Bonjour,

Dans les propriétés du champ de la table,
Onglet Liste de choix:
Afficher le controle : Zone de texte (par défaut). Au bout tu cliques
sur la liste déroulante et choisis soit zone de liste ou zone de liste
modifiable puis tu renseignes la propriété contenu, etc ...

Bonjour
Comment une faire une liste deroulante de table


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
David
Je veux une liste deroulante de mes tables et non pas des enregistrements
d'une table
--
A+
David



Bonjour David

L'assistant te permet de créer des listes déroulantes basées sur
requêtes, tables ou listes de valeurs... Je ne comprends pas donc bien
l'intérêt de cette question...

Eclaire-nous !

Dans ton message
Bonjour
Comment une faire une liste deroulante de table


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
Eric
re,

Un formulaire avec une liste modifiable Modifiable0
Sur l'évènement chargement du formulaire :
Private Sub Form_Load()
' Attention : limite de capacité à 2048 octets
Dim t As TableDef, strTable As String
For Each t In CurrentDb.TableDefs
If Left(t.Name, 4) <> "MSys" Then
strTable = strTable & t.Name & ";"
End If
Next t
Me.Modifiable0.RowSourceType = "Liste valeurs"
Me.Modifiable0.RowSource = strTable
End Sub

C'était ça ?

Je veux une liste deroulante de mes tables et non pas des enregistrements
d'une table


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
David
Cela est parfait et maintenant je souhaite la mettre a jour lorsque j'importe
de nouvelle table

Merci beaucoup
--
A+
David



re,

Un formulaire avec une liste modifiable Modifiable0
Sur l'évènement chargement du formulaire :
Private Sub Form_Load()
' Attention : limite de capacité à 2048 octets
Dim t As TableDef, strTable As String
For Each t In CurrentDb.TableDefs
If Left(t.Name, 4) <> "MSys" Then
strTable = strTable & t.Name & ";"
End If
Next t
Me.Modifiable0.RowSourceType = "Liste valeurs"
Me.Modifiable0.RowSource = strTable
End Sub

C'était ça ?

Je veux une liste deroulante de mes tables et non pas des enregistrements
d'une table


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




Avatar
Eric
Bonjour,

T'en fais une procédure que tu appelles sur le load du formulaire et à
la fin de la procédure d'importation

Sub ListeTablesDeLaBd()
' Attention : limite de capacité à 2048 octets
Dim t As TableDef, strTable As String
For Each t In CurrentDb.TableDefs
If Left(t.Name, 4) <> "MSys" Then
strTable = strTable & t.Name & ";"
End If
Next t
Me.Modifiable0.RowSourceType = "Liste valeurs"
Me.Modifiable0.RowSource = strTable
End Sub

Private Sub Form_Load()
ListeTablesDeLaBd
End Sub

Private Sub Commande2_Click()
' ... procédure d'importation
ListeTablesDeLaBd
End Sub

PS : Pour être plus 'parlant', mais c'est personnel, tu peut mettre
Call ListeTablesDeLaBd au lieu de ListeTablesDeLaBd
(Call étant facultatif).
Toutefois si une procédure a des arguments ce qui n'est pas le cas ici,
tu devras passer les arguments entre () comme ceci
Call ListeTablesDeLaBd(arg1,arg2) au lieu de ListeTablesDeLaBd arg1,arg2

Cela est parfait et maintenant je souhaite la mettre a jour lorsque j'importe
de nouvelle table

Merci beaucoup


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr