Dans mes procédures VBA, je commence par supprimer des enregistrements avant
de les recréer...
Ceci a pour conséquence d'augmenter la valeur des clés primaires de ces
tables, et par la-même augmenter la taille des fichiers, même après
compactage.
Ma question est la suivante :
Est-il possible (et si oui comment !) de réinitialiser la numérotation
automatique des clés primaires après suppression des enregistrements, sans
refermer la base (et si possible, sans recompacter)
Question subsidiaire : peut-on compacter la base sans la fermer-ouvrir ?
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news: %
Objection, Votre Honneur ! si le numauto est une clé primaire et qu'elle n'est utilisée dans aucune relation avec une autre table on peut renuméroter le champ à partir de 1 en VBA. voir: http://officesystem.access.free.fr/ex_champ_numeroauto.htm -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Pierre CFI [mvp]" a écrit dans le message de news:
trés mauvaise question, tu peux retourner au dodo
-- Pierre CFI MVP Microsoft Access
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message de
news: %23Lt6rUpQFHA.3076@TK2MSFTNGP14.phx.gbl...
Objection, Votre Honneur !
si le numauto est une clé primaire et qu'elle n'est utilisée dans aucune
relation avec une autre table on peut renuméroter le champ à partir de 1
en VBA.
voir: http://officesystem.access.free.fr/ex_champ_numeroauto.htm
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Pierre CFI [mvp]" <XXX_pierresalaun@aol.com> a écrit dans le message de
news: OeDhcQpQFHA.4028@tk2msftngp13.phx.gbl...
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news: %
Objection, Votre Honneur ! si le numauto est une clé primaire et qu'elle n'est utilisée dans aucune relation avec une autre table on peut renuméroter le champ à partir de 1 en VBA. voir: http://officesystem.access.free.fr/ex_champ_numeroauto.htm -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Pierre CFI [mvp]" a écrit dans le message de news:
trés mauvaise question, tu peux retourner au dodo
-- Pierre CFI MVP Microsoft Access
Raymond [mvp]
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la
fonction n'enlève que la primarykey mais tu dois avoir un autre index avec
ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer.
si tu dois le faire souvent, inclus tous les index dans la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
42612fe2$0$11699$8fcfb975@news.wanadoo.fr...
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
Joël GARBE
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ? (je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ?
(je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message de
news: Oo231tpQFHA.2356@TK2MSFTNGP14.phx.gbl...
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la
fonction n'enlève que la primarykey mais tu dois avoir un autre index avec
ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer.
si tu dois le faire souvent, inclus tous les index dans la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
42612fe2$0$11699$8fcfb975@news.wanadoo.fr...
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ? (je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
Raymond [mvp]
c'est le nom de l'index. clique sur l'icône index , à droite de l'icone clé primaire et tu auras la liste des index. c'est ces index-là qu'il faut supprimer.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 426134a9$0$19315$
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ? (je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
c'est le nom de l'index.
clique sur l'icône index , à droite de l'icone clé primaire et tu auras la
liste des index. c'est ces index-là qu'il faut supprimer.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
426134a9$0$19315$8fcfb975@news.wanadoo.fr...
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ?
(je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message
de news: Oo231tpQFHA.2356@TK2MSFTNGP14.phx.gbl...
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la
fonction n'enlève que la primarykey mais tu dois avoir un autre index
avec ce champ ce qui empêche de supprimer le champ et bien sûr de le
recréer.
si tu dois le faire souvent, inclus tous les index dans la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
42612fe2$0$11699$8fcfb975@news.wanadoo.fr...
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
c'est le nom de l'index. clique sur l'icône index , à droite de l'icone clé primaire et tu auras la liste des index. c'est ces index-là qu'il faut supprimer.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 426134a9$0$19315$
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ? (je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
Joël GARBE
Cela progresse,
en supprimant la clé primaire, tout en laissant le champ numéotation auto, cela semble fonctionner correctement.
Maintenant la question est l'utilité de la clé primaire ?
On peut s'en passer ? Vais-je réellement en avoir besoin comme le disait Pierre ? Comment le savoir ?
Même si on en reste là, un grand merci ! (j'étudie cette histoire de clé primaire ! en visitant ton site)
Et bon week-end ! --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news: O%
c'est le nom de l'index. clique sur l'icône index , à droite de l'icone clé primaire et tu auras la liste des index. c'est ces index-là qu'il faut supprimer.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 426134a9$0$19315$
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ? (je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
--
Bien cordialement,
Joël GARBE
Cela progresse,
en supprimant la clé primaire, tout en laissant le champ numéotation auto,
cela semble fonctionner correctement.
Maintenant la question est l'utilité de la clé primaire ?
On peut s'en passer ? Vais-je réellement en avoir besoin comme le disait
Pierre ? Comment le savoir ?
Même si on en reste là, un grand merci ! (j'étudie cette histoire de clé
primaire ! en visitant ton site)
Et bon week-end !
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message de
news: O%232TQ0pQFHA.2948@TK2MSFTNGP14.phx.gbl...
c'est le nom de l'index.
clique sur l'icône index , à droite de l'icone clé primaire et tu auras la
liste des index. c'est ces index-là qu'il faut supprimer.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
426134a9$0$19315$8fcfb975@news.wanadoo.fr...
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ?
(je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Raymond [mvp]" <XYZ.officesystem.access@free.fr> a écrit dans le message
de news: Oo231tpQFHA.2356@TK2MSFTNGP14.phx.gbl...
Ce qui veux dire que ton champ numauto fait partie de plusieurs index.
la fonction n'enlève que la primarykey mais tu dois avoir un autre index
avec ce champ ce qui empêche de supprimer le champ et bien sûr de le
recréer.
si tu dois le faire souvent, inclus tous les index dans la fonction.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
42612fe2$0$11699$8fcfb975@news.wanadoo.fr...
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !
en supprimant la clé primaire, tout en laissant le champ numéotation auto, cela semble fonctionner correctement.
Maintenant la question est l'utilité de la clé primaire ?
On peut s'en passer ? Vais-je réellement en avoir besoin comme le disait Pierre ? Comment le savoir ?
Même si on en reste là, un grand merci ! (j'étudie cette histoire de clé primaire ! en visitant ton site)
Et bon week-end ! --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news: O%
c'est le nom de l'index. clique sur l'icône index , à droite de l'icone clé primaire et tu auras la liste des index. c'est ces index-là qu'il faut supprimer.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 426134a9$0$19315$
Heuuuu non non, c'est la seule clé primaire..
Question : PrimaryKey est à inscrire tel quel où est-ce le nom du champ ? (je l'ai laissé tel quel !)
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Raymond [mvp]" a écrit dans le message de news:
Ce qui veux dire que ton champ numauto fait partie de plusieurs index. la fonction n'enlève que la primarykey mais tu dois avoir un autre index avec ce champ ce qui empêche de supprimer le champ et bien sûr de le recréer. si tu dois le faire souvent, inclus tous les index dans la fonction.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Joël GARBE" a écrit dans le message de news: 42612fe2$0$11699$
Je reviens vers toi car l'instruction :
LaTable.Fields.Append fld
provoque une erreur. Tout le reste semble passer !