-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références
1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veux
utiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" a écrit
dans le message
news: 102501c3b434$5dd86e30$
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références
1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veux
utiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" <anonymous@discussions.microsoft.com> a écrit
dans le message
news: 102501c3b434$5dd86e30$a401280a@phx.gbl...
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références
1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veux
utiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" a écrit
dans le message
news: 102501c3b434$5dd86e30$
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
-----Message d'origine-----
Merci pour ton aide je vais maintenant faire tous ce qui
est écris. Encore un grand merci.
@+-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veuxutiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" a écrit
dans le messagenews: 102501c3b434$5dd86e30$
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
.
-----Message d'origine-----
Merci pour ton aide je vais maintenant faire tous ce qui
est écris. Encore un grand merci.
@+
-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références
1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veux
utiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" <anonymous@discussions.microsoft.com> a écrit
dans le message
news: 102501c3b434$5dd86e30$a401280a@phx.gbl...
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
.
-----Message d'origine-----
Merci pour ton aide je vais maintenant faire tous ce qui
est écris. Encore un grand merci.
@+-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veuxutiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" a écrit
dans le messagenews: 102501c3b434$5dd86e30$
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
.
-----Message d'origine-----
Merci pour ton aide je vais maintenant faire tous ce qui
est écris. Encore un grand merci.
@+-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veuxutiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" a écrit
dans le messagenews: 102501c3b434$5dd86e30$
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
.
-----Message d'origine-----
Merci pour ton aide je vais maintenant faire tous ce qui
est écris. Encore un grand merci.
@+
-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références
1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veux
utiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" <anonymous@discussions.microsoft.com> a écrit
dans le message
news: 102501c3b434$5dd86e30$a401280a@phx.gbl...
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
.
-----Message d'origine-----
Merci pour ton aide je vais maintenant faire tous ce qui
est écris. Encore un grand merci.
@+-----Message d'origine-----
Salut,
grand classique du rire, c'est pas ton code qui pose pb
mais tes références1) dans VBE OutilsRéférence
Coche la ref DAO3.6.dll
Puis remonte cette référence au dessus de ADO (access
croit que tu veuxutiliser ADO dans ton code)
Maintenant ça marche mais je te propose de faire en plus
ceci
2)
Dans tes déclarations à la place de
dim db as database
tu écris dim db as dao.database
et donc aussi
dim fld as dao.field
Avec ça au moins tu ne risques plus d'avoir de pb.
A +
Damien.
"NicolasB" a écrit
dans le messagenews: 102501c3b434$5dd86e30$
encore bonjour
A l'avenir je reterai dans le même fil.
Sous access 97 j'ai du code qui fonctionne très bien.
Aujourd'hui on me demande de mettre la base sous access
2000, mais le code qui fonctionne sous 97 ne fonctionne
plus avec 2000. Pouvez vous m'aider??
Voici le code 97 que j'aimerais faire fonctionner sous
2000
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
Merci pour votre aide
.
.
Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler [nom de ta base] dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le ns_) je regarderai
dans la journée
A +
Damien.
Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler [nom de ta base] dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le ns_) je regarderai
dans la journée
A +
Damien.
Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler [nom de ta base] dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le ns_) je regarderai
dans la journée
A +
Damien.
Bonjour Damien.
Ta procédure fonctionne très bien mais tu aurais tu préciser qu'il faut
que:
- la table ne soit pas utilisée (vérifier que le formulaire n'est pas basé
sur cette table)
- qu'il ne peut exister qu'un seul champ numauto dans une table
- mettre on error resume next car toute erreur stoppe la procédure.
Nicolas doit se trouver dans un de ces cas
--
@+
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
"Damien Mermoz" a écrit dans le message de
news:%Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler [nom de ta base]
dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le ns_) je regarderai
dans la journée
A +
Damien.
Bonjour Damien.
Ta procédure fonctionne très bien mais tu aurais tu préciser qu'il faut
que:
- la table ne soit pas utilisée (vérifier que le formulaire n'est pas basé
sur cette table)
- qu'il ne peut exister qu'un seul champ numauto dans une table
- mettre on error resume next car toute erreur stoppe la procédure.
Nicolas doit se trouver dans un de ces cas
--
@+
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
"Damien Mermoz" <ns_mermoz.damien@wanadoo.fr> a écrit dans le message de
news:%235PtgVMtDHA.4060@TK2MSFTNGP11.phx.gbl...
Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler [nom de ta base]
dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le ns_) je regarderai
dans la journée
A +
Damien.
Bonjour Damien.
Ta procédure fonctionne très bien mais tu aurais tu préciser qu'il faut
que:
- la table ne soit pas utilisée (vérifier que le formulaire n'est pas basé
sur cette table)
- qu'il ne peut exister qu'un seul champ numauto dans une table
- mettre on error resume next car toute erreur stoppe la procédure.
Nicolas doit se trouver dans un de ces cas
--
@+
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
"Damien Mermoz" a écrit dans le message de
news:%Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler [nom de ta base]
dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le ns_) je regarderai
dans la journée
A +
Damien.
-----Message d'origine-----
Bonjour Raymond
oui c'est vrai mais ce type d'erreur serait aussi apparue
sur 97 non ? Or
Nicolas n'avait pas de pb sur 97.
Ce qui me surprend c'est que son champ counter ne soit
pas clé primaire car
cela aurait pu expliquer l'erreur.
Et puis de toute façon il a changé de fil :-)
A +
Damien.
"Raymond [mvp]" a écrit dans
le message news:
Bonjour Damien.
Ta procédure fonctionne très bien mais tu aurais tu
préciser qu'il faut
que:
- la table ne soit pas utilisée (vérifier que le
formulaire n'est pas basé
sur cette table)
- qu'il ne peut exister qu'un seul champ numauto dans
une table
- mettre on error resume next car toute erreur stoppe
la procédure.
Nicolas doit se trouver dans un de ces cas
--
@+
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
"Damien Mermoz" a écrit
dans le message de
news:%Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai
dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler
[nom de ta base]
dansVBE )
Si ca passe pas à la compil corriger jusqu'à ce que
ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le
ns_) je regarderai
dans la journée
A +
Damien.
.
-----Message d'origine-----
Bonjour Raymond
oui c'est vrai mais ce type d'erreur serait aussi apparue
sur 97 non ? Or
Nicolas n'avait pas de pb sur 97.
Ce qui me surprend c'est que son champ counter ne soit
pas clé primaire car
cela aurait pu expliquer l'erreur.
Et puis de toute façon il a changé de fil :-)
A +
Damien.
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans
le message news:
e2xC6jMtDHA.2416@TK2MSFTNGP10.phx.gbl...
Bonjour Damien.
Ta procédure fonctionne très bien mais tu aurais tu
préciser qu'il faut
que:
- la table ne soit pas utilisée (vérifier que le
formulaire n'est pas basé
sur cette table)
- qu'il ne peut exister qu'un seul champ numauto dans
une table
- mettre on error resume next car toute erreur stoppe
la procédure.
Nicolas doit se trouver dans un de ces cas
--
@+
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
"Damien Mermoz" <ns_mermoz.damien@wanadoo.fr> a écrit
dans le message de
news:%235PtgVMtDHA.4060@TK2MSFTNGP11.phx.gbl...
Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai
dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler
[nom de ta base]
dans
VBE )
Si ca passe pas à la compil corriger jusqu'à ce que
ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le
ns_) je regarderai
dans la journée
A +
Damien.
.
-----Message d'origine-----
Bonjour Raymond
oui c'est vrai mais ce type d'erreur serait aussi apparue
sur 97 non ? Or
Nicolas n'avait pas de pb sur 97.
Ce qui me surprend c'est que son champ counter ne soit
pas clé primaire car
cela aurait pu expliquer l'erreur.
Et puis de toute façon il a changé de fil :-)
A +
Damien.
"Raymond [mvp]" a écrit dans
le message news:
Bonjour Damien.
Ta procédure fonctionne très bien mais tu aurais tu
préciser qu'il faut
que:
- la table ne soit pas utilisée (vérifier que le
formulaire n'est pas basé
sur cette table)
- qu'il ne peut exister qu'un seul champ numauto dans
une table
- mettre on error resume next car toute erreur stoppe
la procédure.
Nicolas doit se trouver dans un de ces cas
--
@+
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
"Damien Mermoz" a écrit
dans le message de
news:%Bonjour Nicolas,
t'as du te planter quelque part dans ce que je t'ai
dit. Je suis sur
Access2000 je viens de tester ton code ça marche
Private Sub Commande23_Click()
Dim db As DAO.Database
Dim fld As DAO.Field
Set db = CurrentDb
db.TableDefs("tblBudgetForm").Fields.Delete "Counter"
MsgBox "beta : suppr"
Set fld = db.TableDefs("tblBudgetForm").CreateField
("Counter", dbLong)
MsgBox "beta : ajout"
fld.Attributes = dbAutoIncrField
db.TableDefs("tblBudgetForm").Fields.Append fld
db.Close
Set fld = Nothing
Set db = Nothing
End Sub
mes ref cochés sont :
VBA
Access 9
DAO 3.6
OLE
ADO
...
vérifies tes réf, puis compiles (débogageCompiler
[nom de ta base]
dansVBE )
Si ca passe pas à la compil corriger jusqu'à ce que
ca passe.
Ensuite tu devrais plus avoir de pb.
Au pire tu m'envoi ta base compacter ziper (enlève le
ns_) je regarderai
dans la journée
A +
Damien.
.