Test si un fichier est déja ouvert [Résolu]

payhens 21 Messages postés jeudi 5 juillet 2007Date d'inscription 22 avril 2010 Dernière intervention - 7 sept. 2007 à 15:26 - Dernière réponse : vbnino 218 Messages postés jeudi 13 juillet 2006Date d'inscription 11 juillet 2010 Dernière intervention
- 11 sept. 2007 à 18:36
Bonjour je fait une application en VB 2005 qui m'ouvre un fichier(exel entre autre)
je voudrai aussi pouvoir teste si celui ci est déja ouvert
comment faire ?
Merci
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 8 sept. 2007 à 15:32
3
Merci
salut,

en VB6, la fonction d'api _lopen permet de savoir si un fichier est déjà ouvert.
Donc en dotnet, utilise System.IO.File.Open, le paramètre de retour doit certainement te retourner cette valeur

@++

<hr width="100%" size="2" />(

Merci mortalino 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 91 internautes ce mois-ci

Commenter la réponse de mortalino
JM247L 444 Messages postés mardi 27 mars 2007Date d'inscription 1 mars 2011 Dernière intervention - 7 sept. 2007 à 15:31
0
Merci
Bonjour,
A mon avis tu dois pouvoir tester le message qu'envoie Excel lorsque le fichier est déjà ouvert
Un truc du type ReadOnly ... En toiut cas VBA le permet

JML
 Partageons notre savoir et nos acquis
Commenter la réponse de JM247L
cs_Exploreur 4824 Messages postés lundi 11 novembre 2002Date d'inscription 15 novembre 2016 Dernière intervention - 7 sept. 2007 à 15:39
0
Merci
Salut,

Il me semble qu'une question identique à déjà été posée dans le forum réçament, une petite recherche s'impose...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Commenter la réponse de cs_Exploreur
payhens 21 Messages postés jeudi 5 juillet 2007Date d'inscription 22 avril 2010 Dernière intervention - 7 sept. 2007 à 16:48
0
Merci
j'ai chercher et meme en ce moment je continu de chercher mais je ne trouve toujours pas la réponse a ma question
pour plus de précision
je lance mon programme qui ouvre une feuille pour écrire dedans si je relance mon programme il va m'ouvrir a nouveau la meme feuille mais en lecture seul oo je voudrai que dans ce cas il ecrive les données a la suite donc il faut que je test si cette feuille est ouverte
Merci a toutes les personnes qui prennent du temps pour répondre sur ce forum et permmettent a des débutants comme moi de s'en sortir
Commenter la réponse de payhens
JM247L 444 Messages postés mardi 27 mars 2007Date d'inscription 1 mars 2011 Dernière intervention - 7 sept. 2007 à 16:55
0
Merci
C'est exactement ce que je te disais plus haut : Si tu ouvres une seconde fois, il le sera en lecture seule
La solution c'est : A l'ouverture du fichier tu testes le staus et si c'est lecture seule ...

JML
 Partageons notre savoir et nos acquis
Commenter la réponse de JM247L
cs_etniqs 201 Messages postés mardi 7 octobre 2003Date d'inscription 10 mai 2016 Dernière intervention - 7 sept. 2007 à 18:19
0
Merci
je confirme : il existe du code sur ce site pour cela , et y'en a pas qu'un ....

coïto ergo sum
Commenter la réponse de cs_etniqs
vbnino 218 Messages postés jeudi 13 juillet 2006Date d'inscription 11 juillet 2010 Dernière intervention - 8 sept. 2007 à 11:52
0
Merci
Salut!

-Voici un code VB6:

 
   On Error GoTo Command1_Click_Error

Open "C:\xxxx.txt" For Input As #1

   On Error GoTo 0
   Exit Sub

Command1_Click_Error:

    MsgBox "Le fichier est déja ouvert"
Commenter la réponse de vbnino
payhens 21 Messages postés jeudi 5 juillet 2007Date d'inscription 22 avril 2010 Dernière intervention - 10 sept. 2007 à 10:08
0
Merci
merci bcp
Commenter la réponse de payhens
payhens 21 Messages postés jeudi 5 juillet 2007Date d'inscription 22 avril 2010 Dernière intervention - 11 sept. 2007 à 11:54
0
Merci
pour etre plus precis .
Dans mon code je demande l'ouverture d'un fichier
ensuite je teste si il est en lecture seule
(ok ca marche)
ce que je voudrai faire maintenant c'est que s'il est en lecture seul celui ci ne s'ouvre pas mais que le programme utilise le fichier deja ouvert et ca je ne sais pas comment le faire
voici une partie de mon code



Try

mrxls =

New
Application
mrxls.Visible =

True

mrbook = mrxls.Workbooks.Open(

"c:\essaimr"
)


If
mrbook.ReadOnly =

True



Then


MessageBox.Show(

"le fichier est déjà ouvert celui-ci sera ouvert en lecture seul ou veuillez fermer l'autre fichier"
)


End



If
Commenter la réponse de payhens
vbnino 218 Messages postés jeudi 13 juillet 2006Date d'inscription 11 juillet 2010 Dernière intervention - 11 sept. 2007 à 18:36
0
Merci
Salut!

-Dans mon exemple ça marche , sans réouvrir le fichier et sans perdre le fichier déja ouvert.

  -Faut pas ajouter ,Close ton fichier ,dans l'exemple sinon  ....
Commenter la réponse de vbnino

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.