Patatras et oui je vous le dit bien humblement
à force de vouloir ce qu l'on a déjà on fini par chercher autre chose, ou
l'inverse d'ailleurs.
En fait ce qui m'intéresse c'est de pouvoir lister dans une zone de liste
déroulante le nom des champs de la table (que j'aurai passé en paramètre)
ceci afin de d'applquer un traitement (par exemple s'assurer que le code
postal est bien sur 5 chiffres, mais le champ de la table peut être nommé :
CP, CodPos, codepostal, code postal, cp_client, cp livraison, ...
voilà pourquoi je cherche ça (et j'ai plein d'autres traitements sur d'autre
champs)
Merci
Denis
PS je teste ce que Ze Titi m'a donné hier, mais je ne l'ai pas encore fait.
test négatif résultat identique, cela marche chez toi ? Denis
Public Function ListeTables(ByVal strBase As String) As String Dim db As Database, tdf As AccessObject Set db = OpenDatabase(strBase) ListeTables = "" ' <============= On initialise la chaîne à vide... For Each tdf In db.TableDefs ListeTables = ListeTables & chr(34) & tdf.Name & chr(34) & ";" 'MsgBox ListeTables Next db.Close: Set db = Nothing End Function
Essaie de remplacer & ";" par & "," dans la fonction. Mais ça me paraît bien curieux.
Message du lundi 16/07/2007
Non et Oui je m'explique si je tape contenu ºnane,Fraise,Orange (je n'ai rien) si je tape contenu ="Banane","Fraise","Orange" (j'ai Banane ou Fraise ou Orange) tout tines donc dans la syntaxe et le rajout de " Je cherche
Dans contenu mets ºnane,Fraise,Orange Si tu ouvres ton formulaire, tu as bien 3 lignes?
sinon essaye cet exercice déjà: http://www.self-access.com/access/grenier/acRedir.php?id
Il vaut mieux procéder par étapes!
testé pas plus rien dans ma liste box ?
Tout est bon sauf que ce n'est pas
sourcecontrôle = ListeTables(Texte78.valeur) mais contenu=ListeTables(Texte78.valeur)
Pour le rafraichissement, il vaudrait mieux l'affecter aprés mise à jour de Texte78 afin que la liste se réactualise.
Et garder les point virgule en séparateur Cordialement
Que nenni helas 173,729 fois helas! un textbox nommé 'Texte78' avec comme valeur E:2007PP3BPP3B_2007-07-10.mdb une listbox déroulante avec source contrôle : =ListeTables(Texte78.Valeur) Origine source : Liste valeurs me ramène PP3B10;PP3B10_COR;PP3B10_EST;PP3B2;PP3B2_COR;PP3B2_EST;... sur un champ! Gasp! qu'est ce que j'ai raté ?
Dans les propriétés de la liste, dans l'onglet "Données", sélectionne "Liste valeurs" dans la propriété "Origine source".
En ce jour mémorable du lundi 16/07/2007, tu as entrepris la lourde tâche de taper sur ton clavier :
Bonjour Ze titi, en fait je ne m'en sors pas, car j'ai bien (enfin) réussi à passer le resultat de la fonction dans la liste box, mais j'ai un champ rempli de la concaténation (table1;table2;table3;...) pas de possibilité de sélectionner l'une des tables ! Denis
Bonjour denis
Il me semblait t'avoir proposé 2 fonctions qui te ramenaient exactement ce que tu voulais. Qu'en as-tu fait ?
Dans ton message du lundi
Merci Raymond de t'intéresser à nouveau à mes soucis Cela fonctionne bien si je sais sur quel table je recherche les champs par contre comment passer en paramètre le nom de la table je suis sur le schéma suivant dans une liste box je sélectionne ma base de données dans une seconde liste box je sélectionne la table en passant la BdD en paramètre (source : listebox1.value) dans la troisème liste box je sélectionne le champ en passant la table en paramètre (source : listebox2.value)
Denis
Bonjour.
sur la ligne contenu, indiquer le nom de la table. sur la ligne origine source, indiquer: Liste des champs
-- @+ Raymond Access MVP http://www.OfficeSystemAccess.com/ http://officesystem.access.over-blog.com/ http://officesystem.access.free.fr/wiki/ Pour débuter sur le forum: http://www.mpfa.info/
Venez découvrir Open XML, le nouveau format de fichier de la suite Office ! http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db
"denis le breton" a écrit dans le message de news:
Patatras et oui je vous le dit bien humblement à force de vouloir ce qu l'on a déjà on fini par chercher autre chose, ou l'inverse d'ailleurs. En fait ce qui m'intéresse c'est de pouvoir lister dans une zone de liste déroulante le nom des champs de la table (que j'aurai passé en paramètre) ceci afin de d'applquer un traitement (par exemple s'assurer que le code postal est bien sur 5 chiffres, mais le champ de la table peut être nommé
CP, CodPos, codepostal, code postal, cp_client, cp livraison, ... voilà pourquoi je cherche ça (et j'ai plein d'autres traitements sur d'autre champs) Merci Denis PS je teste ce que Ze Titi m'a donné hier, mais je ne l'ai pas encore fait.
--
Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
--
Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
-- Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
-- Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
test négatif résultat identique, cela marche chez toi ?
Denis
Public Function ListeTables(ByVal strBase As String) As String
Dim db As Database, tdf As AccessObject
Set db = OpenDatabase(strBase)
ListeTables = "" ' <============= On initialise la chaîne à
vide...
For Each tdf In db.TableDefs
ListeTables = ListeTables & chr(34) & tdf.Name & chr(34) &
";"
'MsgBox ListeTables
Next
db.Close: Set db = Nothing
End Function
Essaie de remplacer & ";" par & "," dans la fonction. Mais ça me paraît
bien curieux.
Message du lundi 16/07/2007
Non et Oui
je m'explique si je tape
contenu ºnane,Fraise,Orange (je n'ai rien)
si je tape
contenu ="Banane","Fraise","Orange" (j'ai Banane ou Fraise ou Orange)
tout tines donc dans la syntaxe et le rajout de "
Je cherche
Dans contenu mets ºnane,Fraise,Orange
Si tu ouvres ton formulaire, tu as bien 3 lignes?
sinon essaye cet exercice déjà:
http://www.self-access.com/access/grenier/acRedir.php?id
Il vaut mieux procéder par étapes!
testé pas plus rien dans ma liste box ?
Tout est bon sauf que ce n'est pas
sourcecontrôle = ListeTables(Texte78.valeur)
mais
contenu=ListeTables(Texte78.valeur)
Pour le rafraichissement, il vaudrait mieux l'affecter aprés mise à jour
de Texte78 afin que la liste se réactualise.
Et garder les point virgule en séparateur
Cordialement
Que nenni helas 173,729 fois helas!
un textbox nommé 'Texte78' avec comme valeur
E:2007PP3BPP3B_2007-07-10.mdb une listbox déroulante avec
source contrôle : =ListeTables(Texte78.Valeur)
Origine source : Liste valeurs
me ramène
PP3B10;PP3B10_COR;PP3B10_EST;PP3B2;PP3B2_COR;PP3B2_EST;...
sur un champ!
Gasp! qu'est ce que j'ai raté ?
Dans les propriétés de la liste, dans l'onglet "Données", sélectionne
"Liste valeurs" dans la propriété "Origine source".
En ce jour mémorable du lundi 16/07/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour Ze titi, en fait je ne m'en sors pas, car j'ai bien (enfin)
réussi à passer le resultat de la fonction dans la liste box, mais
j'ai un champ rempli de la concaténation (table1;table2;table3;...)
pas de possibilité de sélectionner l'une des tables !
Denis
Bonjour denis
Il me semblait t'avoir proposé 2 fonctions qui te ramenaient
exactement ce que tu voulais. Qu'en as-tu fait ?
Dans ton message
<FC2F0243-6E41-424D-ACBA-657F84A1195B@microsoft.com> du lundi
Merci Raymond de t'intéresser à nouveau à mes soucis
Cela fonctionne bien si je sais sur quel table je recherche les
champs par contre comment passer en paramètre le nom de la table
je suis sur le schéma suivant
dans une liste box je sélectionne ma base de données
dans une seconde liste box je sélectionne la table en passant la
BdD en paramètre (source : listebox1.value)
dans la troisème liste box je sélectionne le champ en passant la
table en paramètre
(source : listebox2.value)
Denis
Bonjour.
sur la ligne contenu, indiquer le nom de la table.
sur la ligne origine source, indiquer: Liste des champs
--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
http://officesystem.access.free.fr/wiki/
Pour débuter sur le forum: http://www.mpfa.info/
Venez découvrir Open XML, le nouveau format de fichier de la suite
Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db
"denis le breton" <denislebreton@discussions.microsoft.com> a
écrit dans le message de news:
2AB7D754-989F-42E6-8B62-02DFE1674015@microsoft.com...
Patatras et oui je vous le dit bien humblement
à force de vouloir ce qu l'on a déjà on fini par chercher autre
chose, ou l'inverse d'ailleurs.
En fait ce qui m'intéresse c'est de pouvoir lister dans une zone
de liste déroulante le nom des champs de la table (que j'aurai
passé en paramètre) ceci afin de d'applquer un traitement (par
exemple s'assurer que le code postal est bien sur 5 chiffres,
mais le champ de la table peut être nommé
CP, CodPos, codepostal, code postal, cp_client, cp livraison, ...
voilà pourquoi je cherche ça (et j'ai plein d'autres traitements
sur d'autre champs)
Merci
Denis
PS je teste ce que Ze Titi m'a donné hier, mais je ne l'ai pas
encore
fait.
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Thierry
Tout pour réussir avec Access :
http://www.mpfa.info
test négatif résultat identique, cela marche chez toi ? Denis
Public Function ListeTables(ByVal strBase As String) As String Dim db As Database, tdf As AccessObject Set db = OpenDatabase(strBase) ListeTables = "" ' <============= On initialise la chaîne à vide... For Each tdf In db.TableDefs ListeTables = ListeTables & chr(34) & tdf.Name & chr(34) & ";" 'MsgBox ListeTables Next db.Close: Set db = Nothing End Function
Essaie de remplacer & ";" par & "," dans la fonction. Mais ça me paraît bien curieux.
Message du lundi 16/07/2007
Non et Oui je m'explique si je tape contenu ºnane,Fraise,Orange (je n'ai rien) si je tape contenu ="Banane","Fraise","Orange" (j'ai Banane ou Fraise ou Orange) tout tines donc dans la syntaxe et le rajout de " Je cherche
Dans contenu mets ºnane,Fraise,Orange Si tu ouvres ton formulaire, tu as bien 3 lignes?
sinon essaye cet exercice déjà: http://www.self-access.com/access/grenier/acRedir.php?id
Il vaut mieux procéder par étapes!
testé pas plus rien dans ma liste box ?
Tout est bon sauf que ce n'est pas
sourcecontrôle = ListeTables(Texte78.valeur) mais contenu=ListeTables(Texte78.valeur)
Pour le rafraichissement, il vaudrait mieux l'affecter aprés mise à jour de Texte78 afin que la liste se réactualise.
Et garder les point virgule en séparateur Cordialement
Que nenni helas 173,729 fois helas! un textbox nommé 'Texte78' avec comme valeur E:2007PP3BPP3B_2007-07-10.mdb une listbox déroulante avec source contrôle : =ListeTables(Texte78.Valeur) Origine source : Liste valeurs me ramène PP3B10;PP3B10_COR;PP3B10_EST;PP3B2;PP3B2_COR;PP3B2_EST;... sur un champ! Gasp! qu'est ce que j'ai raté ?
Dans les propriétés de la liste, dans l'onglet "Données", sélectionne "Liste valeurs" dans la propriété "Origine source".
En ce jour mémorable du lundi 16/07/2007, tu as entrepris la lourde tâche de taper sur ton clavier :
Bonjour Ze titi, en fait je ne m'en sors pas, car j'ai bien (enfin) réussi à passer le resultat de la fonction dans la liste box, mais j'ai un champ rempli de la concaténation (table1;table2;table3;...) pas de possibilité de sélectionner l'une des tables ! Denis
Bonjour denis
Il me semblait t'avoir proposé 2 fonctions qui te ramenaient exactement ce que tu voulais. Qu'en as-tu fait ?
Dans ton message du lundi
Merci Raymond de t'intéresser à nouveau à mes soucis Cela fonctionne bien si je sais sur quel table je recherche les champs par contre comment passer en paramètre le nom de la table je suis sur le schéma suivant dans une liste box je sélectionne ma base de données dans une seconde liste box je sélectionne la table en passant la BdD en paramètre (source : listebox1.value) dans la troisème liste box je sélectionne le champ en passant la table en paramètre (source : listebox2.value)
Denis
Bonjour.
sur la ligne contenu, indiquer le nom de la table. sur la ligne origine source, indiquer: Liste des champs
-- @+ Raymond Access MVP http://www.OfficeSystemAccess.com/ http://officesystem.access.over-blog.com/ http://officesystem.access.free.fr/wiki/ Pour débuter sur le forum: http://www.mpfa.info/
Venez découvrir Open XML, le nouveau format de fichier de la suite Office ! http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db
"denis le breton" a écrit dans le message de news:
Patatras et oui je vous le dit bien humblement à force de vouloir ce qu l'on a déjà on fini par chercher autre chose, ou l'inverse d'ailleurs. En fait ce qui m'intéresse c'est de pouvoir lister dans une zone de liste déroulante le nom des champs de la table (que j'aurai passé en paramètre) ceci afin de d'applquer un traitement (par exemple s'assurer que le code postal est bien sur 5 chiffres, mais le champ de la table peut être nommé
CP, CodPos, codepostal, code postal, cp_client, cp livraison, ... voilà pourquoi je cherche ça (et j'ai plein d'autres traitements sur d'autre champs) Merci Denis PS je teste ce que Ze Titi m'a donné hier, mais je ne l'ai pas encore fait.
--
Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
--
Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
-- Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info
-- Cordialement, Thierry
Tout pour réussir avec Access : http://www.mpfa.info