OVH Cloud OVH Cloud

auto increment

2 réponses
Avatar
Hubert
Bonjour tout le monde


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.

Bref, je suis coincé.


Merci par avance de votre aide


Hubert

2 réponses

Avatar
Gafish
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

Avatar
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