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

Messages postés
21
Date d'inscription
jeudi 5 juillet 2007
Dernière intervention
22 avril 2010
- - Dernière réponse : vbnino
Messages postés
218
Date d'inscription
jeudi 13 juillet 2006
Dernière intervention
11 juillet 2010
- 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
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
19
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" />(

Dire « Merci » 3

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

Codes Sources 114 internautes nous ont dit merci ce mois-ci

Commenter la réponse de mortalino
Messages postés
444
Date d'inscription
mardi 27 mars 2007
Dernière intervention
1 mars 2011
1
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
Messages postés
4824
Date d'inscription
lundi 11 novembre 2002
Dernière intervention
15 novembre 2016
16
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
Messages postés
21
Date d'inscription
jeudi 5 juillet 2007
Dernière intervention
22 avril 2010
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
Messages postés
444
Date d'inscription
mardi 27 mars 2007
Dernière intervention
1 mars 2011
1
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
Messages postés
201
Date d'inscription
mardi 7 octobre 2003
Dernière intervention
10 mai 2016
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
Messages postés
218
Date d'inscription
jeudi 13 juillet 2006
Dernière intervention
11 juillet 2010
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
Messages postés
21
Date d'inscription
jeudi 5 juillet 2007
Dernière intervention
22 avril 2010
0
Merci
merci bcp
Commenter la réponse de payhens
Messages postés
21
Date d'inscription
jeudi 5 juillet 2007
Dernière intervention
22 avril 2010
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
Messages postés
218
Date d'inscription
jeudi 13 juillet 2006
Dernière intervention
11 juillet 2010
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.