Erreur 3051

Le
Jacques
Bonjour,

Lorsque je lance ce code j'ai l'erreur :

3051 ne peut pas ouvrir le fichier, il est déjà ouvert en mode
exclusif par un autre utilisateur.

'Ouverture de la base
Set db = CurrentDb

'Ouvrir la tbl Adhérents
rq = "SELECT * From [tbl Adhérents] "
Set rs = db.OpenRecordset(rq, dbOpenDynaset)

Mon code ????????

rs.Close
Set rs = Nothing

La suite du code ???????

'Crée table liée dans base en cours
DoCmd.TransferDatabase acLink, "Microsoft Access", strDB, acTable,
_
"tbl Chèques", "tbl Chèques"


Comment éviter cette erreur en sachant que j'ai besoin d'ouvrir le
Set db = CurrentDb avant de crée la table liée

Merci pour votre aide.

Salutations.
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Raymond [mvp]
Le #6287141
Bonjour.

l'erreur est très claire, tbl Adhérents est déjà ouverte en mode exclusif.
soit ouverte directement ou par du code vba ou par un formulaire, ton propre
formulaire peut-être. si c'est ton formulaire, voir les options de partage.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db


"Jacques"
Bonjour,

Lorsque je lance ce code j'ai l'erreur :

3051 ne peut pas ouvrir le fichier, il est déjà ouvert en mode
exclusif par un autre utilisateur.

'---Ouverture de la base
Set db = CurrentDb

'---Ouvrir la tbl Adhérents
rq = "SELECT * From [tbl Adhérents] "
Set rs = db.OpenRecordset(rq, dbOpenDynaset)

Mon code ????????

rs.Close
Set rs = Nothing

La suite du code ???????

'---Crée table liée dans base en cours
DoCmd.TransferDatabase acLink, "Microsoft Access", strDB, acTable,
_
"tbl Chèques", "tbl Chèques"


Comment éviter cette erreur en sachant que j'ai besoin d'ouvrir le
Set db = CurrentDb avant de crée la table liée

Merci pour votre aide.

Salutations.
Jacques
Le #6286831
On 15 juin, 13:55, "Raymond [mvp]" wrote:
Bonjour.

l'erreur est très claire, tbl Adhérents est déjà ouverte en mode exclusif.
soit ouverte directement ou par du code vba ou par un formulaire, ton pro pre
formulaire peut-être. si c'est ton formulaire, voir les options de part age.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum:http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Offi ce !http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-43 ...

"Jacques"
Bonjour,

Lorsque je lance ce code j'ai l'erreur :

3051 ne peut pas ouvrir le fichier, il est déjà ouvert en mode
exclusif par un autre utilisateur.

'---Ouverture de la base
Set db = CurrentDb

'---Ouvrir la tbl Adhérents
rq = "SELECT * From [tbl Adhérents] "
Set rs = db.OpenRecordset(rq, dbOpenDynaset)

Mon code ????????

rs.Close
Set rs = Nothing

La suite du code ???????

'---Crée table liée dans base en cours
DoCmd.TransferDatabase acLink, "Microsoft Access", strDB, acTable,
_
"tbl Chèques", "tbl Chèques"

Comment éviter cette erreur en sachant que j'ai besoin d'ouvrir le
Set db = CurrentDb avant de crée la table liée

Merci pour votre aide.

Salutations.


Bonjour Raymond,

Mon formulaire n'a pas de source, par contre à l'ouverture j'ai ce
code:

'---Ouverture de la base
Set db = CurrentDb

'---Ouvrir la tbl Adhérents
rq = "SELECT * From [tbl Adhérents] "
Set rs = db.OpenRecordset(rq, dbOpenDynaset)

Mon code ????????

rs.Close
Set rs = Nothing

Qui se poursuit par:

'---Crée table liée dans base en cours
DoCmd.TransferDatabase acLink, "Microsoft Access", strDB,
acTable,
_ "tbl Chèques", "tbl Chèques"

Comment réaliser cette dernière opération ?

Salutations

Raymond [mvp]
Le #6286811
Du moment que tu passes bien sur le
rs.Close
Set rs = Nothing
la table n'est plus utilisée.
rajoute simplement ceci:
rs.Close
Set rs = Nothing
DoEvents
mais je doute que ça change quelque chose.

ça doit être bloqué par un code ailleurs.

si ça ne change rien, passe moi ta base dans un fichier zip à l'adresse
indiquée dans ma signature ( enlève les xyz de sécurité), jetterai un oeil.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db


"Jacques"

Bonjour Raymond,

Mon formulaire n'a pas de source, par contre à l'ouverture j'ai ce
code:

'---Ouverture de la base
Set db = CurrentDb

'---Ouvrir la tbl Adhérents
rq = "SELECT * From [tbl Adhérents] "
Set rs = db.OpenRecordset(rq, dbOpenDynaset)

Mon code ????????

rs.Close
Set rs = Nothing

Qui se poursuit par:

'---Crée table liée dans base en cours
DoCmd.TransferDatabase acLink, "Microsoft Access", strDB,
acTable,
_ "tbl Chèques", "tbl Chèques"

Comment réaliser cette dernière opération ?

Salutations
Jacques
Le #6286661
On 16 juin, 14:40, "Raymond [mvp]" wrote:
Du moment que tu passes bien sur le
rs.Close
Set rs = Nothing
la table n'est plus utilisée.
rajoute simplement ceci:
rs.Close
Set rs = Nothing
DoEvents
mais je doute que ça change quelque chose.

ça doit être bloqué par un code ailleurs.

si ça ne change rien, passe moi ta base dans un fichier zip à l'adres se
indiquée dans ma signature ( enlève les xyz de sécurité), jettera i un oeil.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum:http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Offi ce !http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-43 ...

"Jacques"

Bonjour Raymond,

Mon formulaire n'a pas de source, par contre à l'ouverture j'ai ce
code:

'---Ouverture de la base
Set db = CurrentDb

'---Ouvrir la tbl Adhérents
rq = "SELECT * From [tbl Adhérents] "
Set rs = db.OpenRecordset(rq, dbOpenDynaset)

Mon code ????????

rs.Close
Set rs = Nothing

Qui se poursuit par:

'---Crée table liée dans base en cours
DoCmd.TransferDatabase acLink, "Microsoft Access", strDB,
acTable,
_ "tbl Chèques", "tbl Chèques"

Comment réaliser cette dernière opération ?

Salutations


Bonsoir Raymond,

Apparament le DoEvents suffit, et merci pour ton aide.

Par contre j'ai encore besoin d'aide.

Mon formulaire Accueil s'ouvre au démarrage de l'application
(Paramétrée par Menu Outil Démarrage et Afficher formulaire/Page)

Si la condition de mon code se vérifie la Msgbox du code me donne un
choix, si oui le code s'exécute et le formulaire s'ouvre.

Comment faire pour que mon code s'exécute après que le formulaire
Accueil s'ouvre ?


Salutations.

Raymond [mvp]
Le #6286631
Bonjour.

tout dépend dans quel événement de quel objet se trouve ton code.
ton code se trouve où ? dans le formulaire d'accueil ou un autre? dans un
module ? lancé par la macro autoexec ?
à voir.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db


"Jacques"

Bonsoir Raymond,

Apparament le DoEvents suffit, et merci pour ton aide.

Par contre j'ai encore besoin d'aide.

Mon formulaire Accueil s'ouvre au démarrage de l'application
(Paramétrée par Menu Outil Démarrage et Afficher formulaire/Page)

Si la condition de mon code se vérifie la Msgbox du code me donne un
choix, si oui le code s'exécute et le formulaire s'ouvre.

Comment faire pour que mon code s'exécute après que le formulaire
Accueil s'ouvre ?


Salutations.
Jacques
Le #6285781
On 17 juin, 11:16, "Raymond [mvp]" wrote:
Bonjour.

tout dépend dans quel événement de quel objet se trouve ton code.
ton code se trouve où ? dans le formulaire d'accueil ou un autre? dans un
module ? lancé par la macro autoexec ?
à voir.
--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum:http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Offi ce !http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-43 ...

"Jacques"

Bonsoir Raymond,

Apparament le DoEvents suffit, et merci pour ton aide.

Par contre j'ai encore besoin d'aide.

Mon formulaire Accueil s'ouvre au démarrage de l'application
(Paramétrée par Menu Outil Démarrage et Afficher formulaire/Page)

Si la condition de mon code se vérifie la Msgbox du code me donne un
choix, si oui le code s'exécute et le formulaire s'ouvre.

Comment faire pour que mon code s'exécute après que le formulaire
Accueil s'ouvre ?

Salutations.


Bonjour Raymond,

Actuellement le code se trouve sur l'ouverture du formulaire Accueil.

Salutations

Raymond [mvp]
Le #6285771
Bonsoir.

le code étant dans le formulaire accueil et pour que le formulaire accueil
s'ouvre avant le code, il faut placer le code dans l'événement form_load qui
est déclenché après l'affichage du formulaire et l'affichage des
enregistrements ce qui est important en soi. contrairement à l'événement
Open qui est déclenché après l'affichage du formulaire et avant l'affichage
du premier enregistrement.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db


"Jacques"

Bonjour Raymond,

Actuellement le code se trouve sur l'ouverture du formulaire Accueil.

Salutations
Jacques
Le #6285691
On 18 juin, 19:35, "Raymond [mvp]" wrote:
Bonsoir.

le code étant dans le formulaire accueil et pour que le formulaire accu eil
s'ouvre avant le code, il faut placer le code dans l'événement form_l oad qui
est déclenché après l'affichage du formulaire et l'affichage des
enregistrements ce qui est important en soi. contrairement à l'évén ement
Open qui est déclenché après l'affichage du formulaire et avant l'a ffichage
du premier enregistrement.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/http://officesyste m.access.over-blog.com/
Pour débuter sur le forum:http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Offi ce !http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-43 ...

"Jacques"

Bonjour Raymond,

Actuellement le code se trouve sur l'ouverture du formulaire Accueil.

Salutations


Re Bonsoir,

J'ai fait un petit test en mettant un Msgbox sur Form_load, et le
message apparait avant l'ouverture du form Accueil.

Je précise à toute fin utile que le formulaire et paramétré à
l'ouverture par (Menu Outil Démarrage et Afficher formulaire/Page) .

Salutations.

Raymond [mvp]
Le #6285671
si le code est dans le formulaire lui-même, il faut bien que le formulaire
soit ouvert pour que le code s'exécute ? il ne peut pas s'exécuter dans le
vide.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Venez découvrir Open XML, le nouveau format de fichier de la suite Office !
http://www.comscamp.com/Tracker/Redirect.ashx?linkidÿ71c7f3-78e8-4371-abaf-b73c259e58db


"Jacques"
Re Bonsoir,

J'ai fait un petit test en mettant un Msgbox sur Form_load, et le
message apparait avant l'ouverture du form Accueil.

Je précise à toute fin utile que le formulaire et paramétré à
l'ouverture par (Menu Outil Démarrage et Afficher formulaire/Page) .

Salutations.
Publicité
Poster une réponse
Anonyme