En VBA, j'arrive à lire (avec TableDef) les champs d'une table avec leurs
propriétés et à repérer les champs index et le champ avec la clé primaire.
Mais je n'arrive pas à déterminer si le champ qui posséde la clé primaire
est en NuméroAuto ou pas.
J'ai trouvé la propriété DataType dans l'aide VBA d'Access qui parle d'un
paramétre NuméroAuto ainsi que la propriété NewValues mais je ne vois pas à
quel objet les appliquer (ni Field ni Index n'ont ces propriétés) et il
n'existe pas, semble t-il, de type de données AutoIncrement ou NuméroAuto
dans Access.
En VBA, j'arrive à lire (avec TableDef) les champs d'une table avec leurs propriétés et à repérer les champs index et le champ avec la clé primaire.
Mais je n'arrive pas à déterminer si le champ qui posséde la clé primaire est en NuméroAuto ou pas.
En prenant tonChamp de type "Field", essaie le test suivant
If tonChamp.Attributes = dbAutoIncrField Then msgbox tonChamp & " est un numéro auto" End If
à adapter ensuite
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Hubert
Un très grand merci pour ces indications
Mais, en fait, le test doit être le suivant :
If tonChamp.Attributes = dbAutoIncrField + dbFixedField Then msgbox tonChamp & " est un numéro auto" End If
puisque la propriété Attributes d'un champ numérique est toujours dbFixedField (=1) et qu'elle s'addtionne, quand le champ est NuméroAuto, avec la constante dbAutoIncrField ()
encore un grand merci car j'ai pu régler mon problème
Hubert
"Gafish" a écrit dans le message de news:
Hubert wrote:
Bonjour tout le monde
Bonjour
En VBA, j'arrive à lire (avec TableDef) les champs d'une table avec leurs propriétés et à repérer les champs index et le champ avec la clé primaire.
Mais je n'arrive pas à déterminer si le champ qui posséde la clé primaire est en NuméroAuto ou pas.
En prenant tonChamp de type "Field", essaie le test suivant
If tonChamp.Attributes = dbAutoIncrField Then msgbox tonChamp & " est un numéro auto" End If
à adapter ensuite
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Un très grand merci pour ces indications
Mais, en fait, le test doit être le suivant :
If tonChamp.Attributes = dbAutoIncrField + dbFixedField Then
msgbox tonChamp & " est un numéro auto"
End If
puisque la propriété Attributes d'un champ numérique est toujours
dbFixedField (=1) et qu'elle s'addtionne, quand le champ est NuméroAuto,
avec la constante dbAutoIncrField ()
encore un grand merci car j'ai pu régler mon problème
Hubert
"Gafish" <---gafish@free.fr----nospam> a écrit dans le message de news:
uf2RCAJgFHA.2700@TK2MSFTNGP15.phx.gbl...
Hubert wrote:
Bonjour tout le monde
Bonjour
En VBA, j'arrive à lire (avec TableDef) les champs d'une table avec
leurs propriétés et à repérer les champs index et le champ avec la
clé primaire.
Mais je n'arrive pas à déterminer si le champ qui posséde la clé
primaire est en NuméroAuto ou pas.
En prenant tonChamp de type "Field", essaie le test suivant
If tonChamp.Attributes = dbAutoIncrField Then
msgbox tonChamp & " est un numéro auto"
End If
à adapter ensuite
Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
If tonChamp.Attributes = dbAutoIncrField + dbFixedField Then msgbox tonChamp & " est un numéro auto" End If
puisque la propriété Attributes d'un champ numérique est toujours dbFixedField (=1) et qu'elle s'addtionne, quand le champ est NuméroAuto, avec la constante dbAutoIncrField ()
encore un grand merci car j'ai pu régler mon problème
Hubert
"Gafish" a écrit dans le message de news:
Hubert wrote:
Bonjour tout le monde
Bonjour
En VBA, j'arrive à lire (avec TableDef) les champs d'une table avec leurs propriétés et à repérer les champs index et le champ avec la clé primaire.
Mais je n'arrive pas à déterminer si le champ qui posséde la clé primaire est en NuméroAuto ou pas.
En prenant tonChamp de type "Field", essaie le test suivant
If tonChamp.Attributes = dbAutoIncrField Then msgbox tonChamp & " est un numéro auto" End If
à adapter ensuite
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr