Problème de création d'un champ de type NuméroAuto [Résolu]

Signaler
Messages postés
207
Date d'inscription
mardi 19 juin 2007
Statut
Membre
Dernière intervention
22 février 2016
-
Messages postés
207
Date d'inscription
mardi 19 juin 2007
Statut
Membre
Dernière intervention
22 février 2016
-
bonjour,
je vous présente mon problème : j'ai un formulaire avec plusieurs boutons dont un qui nous permet d'importer des fichier Excel vers Access (ça je sait faire avec la commande 'TransferSpreadsheet') Mais dans cette nouvelle table qui es cré par cette importation je veux que la clé primaire soit un numéro automatique mais le problème c'est que j'arrive pas çà le créer....
J'ai trouvé un bout de code sur ce site là c'est pour cela que je me suis créé un compte. Mais le problème c'est que lorsque je met ce bout de code pour essayer de créer mon champ automatique, il n'y a pas création de la table et en + il m'affiche un message d'erreur qui est le suivant : Objet requis

bout de code de ce site :
Set chp = dft.CreateField("Numero", dbLong)
chp.DefaultValue = "GenUniqueID()"
chp.Attributes = dbAutoIncrField

Donc je ne sait plus comment faire pour m'en sortir, veuillez svp m'aider pour créer ce champ mais pour que l'importation soit possible d'être effectué.

Merci d'avance!!

7 réponses

Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
Bonjour ,
t' as bien mis
Dim chp As Field avant Set chp = dft.CreateField("Numero", dbLong)     ?
Messages postés
207
Date d'inscription
mardi 19 juin 2007
Statut
Membre
Dernière intervention
22 février 2016
2
effectivement, je n'avait pas mis de "Dim" mais maintenant j'ai un nouveau message d'erreur qui est le suivant :
"Membre de méthode ou de données introuvable" et pour lui la faute serait : .DefaultValue
je voit pas du tout pourquoi!!
Messages postés
207
Date d'inscription
mardi 19 juin 2007
Statut
Membre
Dernière intervention
22 février 2016
2
Chaibat05, je voulais te signaler que j'avais presque trouvé, c'est à dire que j'ai trouvé la bonne commande qui est la suivante :
                                             DoCmd.RunSQL "ALTER TABLE DOCQUEST ADD COLUMN MonChampID COUNTER;"
Mais je sait pas pourquoi les numéros automatique sont dans le désordre, comment faire si je les veux dans l'ordres??si t'a une idée bien sur!!
Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
il faut par la suite indexer ta table sur MonChampID
Messages postés
207
Date d'inscription
mardi 19 juin 2007
Statut
Membre
Dernière intervention
22 février 2016
2
effectivement, j'avais oublié de dire que MonChampId était la clé primaire de al table, merci de ta part!! Normalement c'est bon, il me reste juste a profiner mon code pour que ce soit toujours bon quoiqu'il arrive!!LOL.
Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
DoCmd.RunSQL "ALTER TABLE DOCQUEST ADD PRIMARY KEY (MonChampID) COUNTER;"

je crois...
Messages postés
207
Date d'inscription
mardi 19 juin 2007
Statut
Membre
Dernière intervention
22 février 2016
2
oui, je sait Chaibat05, je te l'ai donné en haut!! j'ai réussi ca C bon, ça fait ce que je veux exactement sauf que la suis entrain d'ajuster mon code par rapport à la demande c'est à dire que si la table existe alors je la supprime sinon je la crée. En gros c'estcela mais t'inkiéte normalemen j'y arive!!LOL.