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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:094c01c3af4a$8df12e20$a401280a@phx.gbl...
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
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