OVH Cloud OVH Cloud

Creation des Champs II

1 réponse
Avatar
Claudia
Je suis en train de cr=E9er des nouveaux champs sur une=20
table Access, mais ces nouveaux champs doivent =EAtre mis=20
dans une position sp=E9cifique. Ils doivent =EAtre avant deux=20
colonnes,

Quels commandes je dois utiliser ? je suis en train de le=20
faire avec du code pas avec Access

1 réponse

Avatar
Raymond [mvp]
Bonjour Claudia.

tu dois utiliser la propriété OrdinalPosition, si tu indiques 2 ton champ
sera le 3e.

je te donnes un exemple complet:

Dim MaBase As DAO.Database
Dim Matable As DAO.TableDef
Dim fld As DAO.Field
Dim idx As DAO.Index

Set MaBase = CurrentDb() ' Ouverture base de données
Set Matable = MaBase.TableDefs("NouvelleTable") 'ouverture définitions
tables

Set fld = Matable.CreateField("Ville1", dbText)
fld.OrdinalPosition = 2 'champ position 3
fld.Size = 50 'taille 50 caractères
fld.Required = True 'valeur nulle interdite
fld.AllowZeroLength = False 'chaine vide autorisée

Matable.Fields.Append fld 'ajout du champ dans la table
Set idx = Matable.CreateIndex("Ville1") 'création d'un index
idx.Primary = False
idx.Required = True
idx.Unique = False ' avec doublons
Set fld = idx.CreateField("Ville1") 'définition du
champ qui sert d'index
idx.Fields.Append fld 'ajout du champ dans l'index
Matable.Indexes.Append idx 'ajout de l'index
dans la table

MaBase.TableDefs.Refresh

MsgBox "La table """ & Matable.Name & """ a été modifiée avec succès", ,
"Modification nouvelle table"

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour une meilleure
efficacité de tes interventions sur MPFA


"Claudia" a écrit dans le message de
news:094c01c3af4a$8df12e20$
Je suis en train de créer des nouveaux champs sur une
table Access, mais ces nouveaux champs doivent être mis
dans une position spécifique. Ils doivent être avant deux
colonnes,

Quels commandes je dois utiliser ? je suis en train de le
faire avec du code pas avec Access