Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name & ";"
End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name & ";"
End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name & ";"
End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
Si ce que t'a proposé Raymond ne fonctionne pas, c'est qu'il y a un élément que nous ne connaissons pas dans ton formulaire.
^ ^^^
Si ce que t'a proposé Raymond ne fonctionne pas, c'est qu'il y a un élément que nous ne connaissons pas dans ton formulaire.
^ ^^^
Si ce que t'a proposé Raymond ne fonctionne pas, c'est qu'il y a un élément que nous ne connaissons pas dans ton formulaire.
^ ^^^
Hello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name & ";"
End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Hello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name & ";"
End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Hello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name & ";"
End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Merci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
DenisHello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Merci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
Denis
Hello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Merci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
DenisHello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Après avoir regardé jeté un oeil rapidement, je constate que tu n'as
pas suivi toutes les pistes données...
D'abord, l'origine source de chaque liste déroulante doit être "Liste
valeurs".
Ensuite, tu appelles les fonctions données avec Call, hors, je t'avais
dit qu'il suffisait d'affecter le résultat de la fonction à la source
de la liste concernée. Par exemple:
table=ListeTables(BdD)
Ca vaut aussi pour la liste des champs.
Ca va te donner, dans le code du formulaire:
Private Sub List_tab_bdd_Click()
Table.RowSource = ListeTables(BdD)
End Sub
Private Sub List_chp_tab_Click()
champ.RowSource = ListerChampsTable(BdD, Table)
End Sub
Dans les fonctions, le séparateur est bien le point-virgule, pas le
retour à la ligne, ni la virgule. Voici les fonctions telles qu'elles
doivent être :
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database
Set db = OpenDatabase(strBase)
ListeTables = ""
For Each tdf In db.TableDefs
ListeTables = ListeTables & tdf.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Public Function ListerChampsTable(ByVal strBase As String, ByVal
strTable As String) As String
Dim db As Database, fld As Field
ListerChampsTable = ""
Set db = OpenDatabase(strBase)
For Each fld In db.TableDefs(strTable).Fields
ListerChampsTable = ListerChampsTable & fld.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Voilou !
Testé chez moi, fonctionne impeccable !
Dans ton messageMerci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
DenisHello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Après avoir regardé jeté un oeil rapidement, je constate que tu n'as
pas suivi toutes les pistes données...
D'abord, l'origine source de chaque liste déroulante doit être "Liste
valeurs".
Ensuite, tu appelles les fonctions données avec Call, hors, je t'avais
dit qu'il suffisait d'affecter le résultat de la fonction à la source
de la liste concernée. Par exemple:
table=ListeTables(BdD)
Ca vaut aussi pour la liste des champs.
Ca va te donner, dans le code du formulaire:
Private Sub List_tab_bdd_Click()
Table.RowSource = ListeTables(BdD)
End Sub
Private Sub List_chp_tab_Click()
champ.RowSource = ListerChampsTable(BdD, Table)
End Sub
Dans les fonctions, le séparateur est bien le point-virgule, pas le
retour à la ligne, ni la virgule. Voici les fonctions telles qu'elles
doivent être :
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database
Set db = OpenDatabase(strBase)
ListeTables = ""
For Each tdf In db.TableDefs
ListeTables = ListeTables & tdf.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Public Function ListerChampsTable(ByVal strBase As String, ByVal
strTable As String) As String
Dim db As Database, fld As Field
ListerChampsTable = ""
Set db = OpenDatabase(strBase)
For Each fld In db.TableDefs(strTable).Fields
ListerChampsTable = ListerChampsTable & fld.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Voilou !
Testé chez moi, fonctionne impeccable !
Dans ton message <E3D94C03-5AC6-43D3-85BB-F3B30B14ABF7@microsoft.com>
Merci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
Denis
Hello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Après avoir regardé jeté un oeil rapidement, je constate que tu n'as
pas suivi toutes les pistes données...
D'abord, l'origine source de chaque liste déroulante doit être "Liste
valeurs".
Ensuite, tu appelles les fonctions données avec Call, hors, je t'avais
dit qu'il suffisait d'affecter le résultat de la fonction à la source
de la liste concernée. Par exemple:
table=ListeTables(BdD)
Ca vaut aussi pour la liste des champs.
Ca va te donner, dans le code du formulaire:
Private Sub List_tab_bdd_Click()
Table.RowSource = ListeTables(BdD)
End Sub
Private Sub List_chp_tab_Click()
champ.RowSource = ListerChampsTable(BdD, Table)
End Sub
Dans les fonctions, le séparateur est bien le point-virgule, pas le
retour à la ligne, ni la virgule. Voici les fonctions telles qu'elles
doivent être :
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database
Set db = OpenDatabase(strBase)
ListeTables = ""
For Each tdf In db.TableDefs
ListeTables = ListeTables & tdf.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Public Function ListerChampsTable(ByVal strBase As String, ByVal
strTable As String) As String
Dim db As Database, fld As Field
ListerChampsTable = ""
Set db = OpenDatabase(strBase)
For Each fld In db.TableDefs(strTable).Fields
ListerChampsTable = ListerChampsTable & fld.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Voilou !
Testé chez moi, fonctionne impeccable !
Dans ton messageMerci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
DenisHello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Après avoir regardé jeté un oeil rapidement, je constate que tu n'as
pas suivi toutes les pistes données...
D'abord, l'origine source de chaque liste déroulante doit être "Liste
valeurs".
Ensuite, tu appelles les fonctions données avec Call, hors, je t'avais
dit qu'il suffisait d'affecter le résultat de la fonction à la source
de la liste concernée. Par exemple:
table=ListeTables(BdD)
Ca vaut aussi pour la liste des champs.
Ca va te donner, dans le code du formulaire:
Private Sub List_tab_bdd_Click()
Table.RowSource = ListeTables(BdD)
End Sub
Private Sub List_chp_tab_Click()
champ.RowSource = ListerChampsTable(BdD, Table)
End Sub
Dans les fonctions, le séparateur est bien le point-virgule, pas le
retour à la ligne, ni la virgule. Voici les fonctions telles qu'elles
doivent être :
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database
Set db = OpenDatabase(strBase)
ListeTables = ""
For Each tdf In db.TableDefs
ListeTables = ListeTables & tdf.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Public Function ListerChampsTable(ByVal strBase As String, ByVal
strTable As String) As String
Dim db As Database, fld As Field
ListerChampsTable = ""
Set db = OpenDatabase(strBase)
For Each fld In db.TableDefs(strTable).Fields
ListerChampsTable = ListerChampsTable & fld.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Voilou !
Testé chez moi, fonctionne impeccable !
Dans ton messageMerci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
DenisHello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Après avoir regardé jeté un oeil rapidement, je constate que tu n'as
pas suivi toutes les pistes données...
D'abord, l'origine source de chaque liste déroulante doit être "Liste
valeurs".
Ensuite, tu appelles les fonctions données avec Call, hors, je t'avais
dit qu'il suffisait d'affecter le résultat de la fonction à la source
de la liste concernée. Par exemple:
table=ListeTables(BdD)
Ca vaut aussi pour la liste des champs.
Ca va te donner, dans le code du formulaire:
Private Sub List_tab_bdd_Click()
Table.RowSource = ListeTables(BdD)
End Sub
Private Sub List_chp_tab_Click()
champ.RowSource = ListerChampsTable(BdD, Table)
End Sub
Dans les fonctions, le séparateur est bien le point-virgule, pas le
retour à la ligne, ni la virgule. Voici les fonctions telles qu'elles
doivent être :
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database
Set db = OpenDatabase(strBase)
ListeTables = ""
For Each tdf In db.TableDefs
ListeTables = ListeTables & tdf.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Public Function ListerChampsTable(ByVal strBase As String, ByVal
strTable As String) As String
Dim db As Database, fld As Field
ListerChampsTable = ""
Set db = OpenDatabase(strBase)
For Each fld In db.TableDefs(strTable).Fields
ListerChampsTable = ListerChampsTable & fld.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Voilou !
Testé chez moi, fonctionne impeccable !
Dans ton message <E3D94C03-5AC6-43D3-85BB-F3B30B14ABF7@microsoft.com>
Merci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
Denis
Hello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
Après avoir regardé jeté un oeil rapidement, je constate que tu n'as
pas suivi toutes les pistes données...
D'abord, l'origine source de chaque liste déroulante doit être "Liste
valeurs".
Ensuite, tu appelles les fonctions données avec Call, hors, je t'avais
dit qu'il suffisait d'affecter le résultat de la fonction à la source
de la liste concernée. Par exemple:
table=ListeTables(BdD)
Ca vaut aussi pour la liste des champs.
Ca va te donner, dans le code du formulaire:
Private Sub List_tab_bdd_Click()
Table.RowSource = ListeTables(BdD)
End Sub
Private Sub List_chp_tab_Click()
champ.RowSource = ListerChampsTable(BdD, Table)
End Sub
Dans les fonctions, le séparateur est bien le point-virgule, pas le
retour à la ligne, ni la virgule. Voici les fonctions telles qu'elles
doivent être :
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database
Set db = OpenDatabase(strBase)
ListeTables = ""
For Each tdf In db.TableDefs
ListeTables = ListeTables & tdf.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Public Function ListerChampsTable(ByVal strBase As String, ByVal
strTable As String) As String
Dim db As Database, fld As Field
ListerChampsTable = ""
Set db = OpenDatabase(strBase)
For Each fld In db.TableDefs(strTable).Fields
ListerChampsTable = ListerChampsTable & fld.Name & ";"
Next
db.Close: Set db = Nothing
End Function
Voilou !
Testé chez moi, fonctionne impeccable !
Dans ton messageMerci à toi Ze Titi de ta suggestion, un peu de temps pour refaire une p'tiot
base simple qu'il est possible de recupérer là :
http://cjoint.com/?hsobOJTpW1 Si cela te semple plus explicite
Il sans dire, mais aussi et encore mieux en le disant que les références
Microsoft DAO 3.6, Microsoft ADO Ext. 2.8, entre autres sont activées
Il va toujours sans dire , ...
que les deux boutons intermédiaire n'ont qu'une valeur temporaire s'ils
pouvaient disparaître, quel bonheur
Bien en attendant une lecture instructive de ta réponse ou d'un autre
utilisateur
Bon courage ET merci
DenisHello denis !
Si ce que t'as proposé Raymond ne fonctionne, c'est qu'il y a un
élément que nous ne connaissons pas dans ton formulaire.
Mets ta base (version minimaliste et zippée) sur
http://cjoint.com
et donne-nous le lien.
En ce jour mémorable du mercredi 18/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :Re bonjour
tout d'abord un grand merci à tous ceux qui MVP ou amateurs éclairés
viennent au secours des autres
je reprends le fil interrompu
le dernier contenu était de la part de Raymond :
...
Je refais un bout de chemin avec vous.
pour placer les noms de tables d'une base dans une combobox, il faut faire
ceci:
Dim Tdf As DAO.TableDef
Dim Db As DAO.Database
Set Db = OpenDatabase("F:Mes Documentscomptoir.mdb")
Me.Modifiable1.RowSource = ""
For Each Tdf In Db.TableDefs
If Left(Tdf.Name, 4) <> "MSys" Then
Me.Modifiable1.RowSource = Me.Modifiable1.RowSource & Tdf.Name &
";" End If
Next Tdf
Set Db = Nothing
...
Déja chez moi cela ne marche pas, rien dans la zone de liste modifiable ...
je suis sous XP SP2, ACCESS 2003, et je vais craquer c'est quand même
incroyable que aucun fil sur Internet (newsgroup, google, developpez.com,
...) ne taite simplement le sujet ou alors je suis vraiment trop c.., (cela
je commence à en être convaincu)
Bref une rapide re-formulation de ce que je cherche, pour faire simple :
avoir, dans une zone de liste modifiable, la liste des champs d'une table
(dont j'aurai passé le nom en paramètre)
Si il reste encore quelqu'un qui sache, moi je sèche.
Denis
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info