Fichier en cours d'utilisation [Résolu]

Messages postés
139
Date d'inscription
lundi 7 janvier 2002
Dernière intervention
15 mars 2016
- - Dernière réponse : cs_dary
Messages postés
1
Date d'inscription
jeudi 15 juillet 2004
Dernière intervention
24 octobre 2006
- 24 oct. 2006 à 20:41
Bonjour,

voici le code qui me pose souci :

Retry:
On Error GoTo err_open

If New_File Then
filenumber_1 = FreeFile
Open Chemin_Data & Nom_Fichier_Data For Output As #filenumber_1
Else
filenumber_1 = FreeFile
Open Chemin_Data & Nom_Fichier_Data For Append As #filenumber_1
End If
Exit Function
err_open:
MsgBox "Erreur d'ouverture de fichier. Fermer le fichier et appuyer sur Ok", vbOKOnly
On Error GoTo 0
GoTo Retry


mon probleme est que lorsque j'essai d'ouvrir un fichier déja ouvert le gestionnaire d'erreur m'intercepte bien le probleme la premiere fois mais ensuite lors du "retry" il m'afffiche une erreur VB et non l'erreur de ma msgbox

Quelqu'un aurait il une solution ou une meilleur maniere de gerer tout ça?
Merci
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
3
Merci
faut faire un Resume pour supprimer l'erreur

mais si l'erreur persiste, ça risque de boucler.







On Error GoTo err_open


Retry:
If New_File Then
filenumber_1 = FreeFile
Open Chemin_Data & Nom_Fichier_Data For Output As #filenumber_1
Else
filenumber_1 = FreeFile
Open Chemin_Data & Nom_Fichier_Data For Append As #filenumber_1
End If
Exit Function

err_open:
MsgBox "Erreur d'ouverture de fichier. Fermer le fichier et appuyer sur Ok", vbOKOnly
Resume Retry



Daniel

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Dernière intervention
9 juin 2006
3
Merci
Ou encore plus simplement ...

On Error GoTo err_open

filenumber_1 = FreeFile
If New_File Then
Open Chemin_Data & Nom_Fichier_Data For Output As #filenumber_1
Else
Open Chemin_Data & Nom_Fichier_Data For Append As #filenumber_1
End If
Exit Function

err_open:
MsgBox "Erreur d'ouverture de fichier. Fermer le fichier et appuyer sur Ok", vbOKOnly
Resume

... mais effectivement ca risque de boucler !! Faudrait faire un compteur avec un nb possible de tentative ...

CR
CR

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Dernière intervention
9 juin 2006
0
Merci
Salut,
1- Il faudrait que tu nous donne le code erreur que tu recois ...
2- ohhh!!! Le vilain "Goto" !!! C'est pas bien du tout ca !!! Plus sérieusement, il vaut mieux eviter d'utiliser l'isntruction "Goto" en VB, qui n'existe que pour des raisons historiques, mais n'a pas lieu d'être.
Messages postés
139
Date d'inscription
lundi 7 janvier 2002
Dernière intervention
15 mars 2016
0
Merci
oui je sais c'est pas bien le goto. Mais je voyai pas trop comment faire simplement pour ce genre de probleme... Je n'ai pas le code d'erreur exact mais ça dit en gros que je ne peu pas ouvrir le fichier. Et ceci arrive quand il est déja ouvert par une autre application.
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
0
Merci
c'est bien ce que j'avais mis, un compteur pour éviter de boucler.

mais avec Resume seul, ça n'a pas manquer, boucle infinie ... arrêt Vb

le Resume reprend l'instruction en cours, il faut donc mettre le compteur dans la procédure d'erreur.

il faudrait aussi tester qu'elle est l'erreur parce que parfois on a des surprises:

MsgBox Err.Number & ": " & Err.Description




Daniel
Messages postés
139
Date d'inscription
lundi 7 janvier 2002
Dernière intervention
15 mars 2016
0
Merci
nickel ça marche comme je voulais. Le fait que ça reboucle et justement voulu tant que l'utilisateur n'a pas fermé le fichier le message doit s'afficher...

Merci à vous deux .. ;-)
Messages postés
1
Date d'inscription
jeudi 15 juillet 2004
Dernière intervention
24 octobre 2006
0
Merci
j'arrive pas a ouvrir la base de donnees access à partir de mon poste si elle est deja ouverte sur un autre poste.
l'utilisation de:
Set Base = Workspaces(0).OpenDatabase(Chemin)
provoque le message "impossible d'utiliser ...............; fichier en cours d'utilisation.
Merci pour l'aide.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.