|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : juillet 2008 Messages : 166 ![]() |
Bonjour,
J'utilise la fonction de caféine ci dessous pour vérifier que le fichier d'export excel que je créer dans mon formulaire n'est pas déjà ouvert. Cette fonction est censée fermer le fichier si j'ai bien compris son utilisation. Code :
Mais j'ai une erreur de permission refusée ? Merci de votre aide Marcopololo |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : août 2006 Messages : 1 435 ![]() |
Bonjour,
Cette fonction indique seulement si le fichier est ouvert ou non mais ne le ferme pas |
|
|
00
|
|
|
#3 | ||
|
Nouveau Membre du Club
![]() Inscription : juillet 2008 Messages : 166 ![]() |
La fonction close ne sert pas à cela ?
J'ai testé en mettant des msgbox et même si j'ai un fichier ouvert au même nom cela me renvoi la valeur 0 puis 1 à chaque fois. Code :
J'ai rajouté une msgbox juste après Open et j'ai toujours le code 53 (fichier introuvable), ce qui veut dire qu'il ne trouve pas mon fichier même ouvert. Je vais chercher du côté problème de syntaxe du nom du fichier. Vérification faite mon nom de fichier est bien pris en compte mais je n'ai pas d'erreur 0 |
||
|
|
00
|
|
|
#4 | |
![]() ![]() Maintenance données produits Inscription : décembre 2005 Messages : 3 939 ![]() |
Bonjour,
Comme l'a dit helas, la fonction ne ferme pas le fichier. Citation:
Elle sert juste à fermer le fichier si l'instruction Open a pu l'ouvrir avec succès. C'est justement le succès d'ouverture qui veut dire que le fichier n'était pas déjà ouvert par Excel. Concernant l'erreur 53 (Fichier introuvable), est-ce que tu fournis bien le chemin complet ? Ex : C:\Documents and Settings\Moi\Mes documents\ff.xlsx A+ |
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2008 Messages : 166 ![]() |
Non effectivement je ne fournis pas le chemin. Je viens de modifier c'est mieux, je passe par ma fonction if mais je vais poursuivre, je crois que ma fonction n'est pas placée au bon endroit.
Je vous tiens informés. Merci LedzeppII |
|
|
00
|
|
|
#6 | ||
|
Nouveau Membre du Club
![]() Inscription : juillet 2008 Messages : 166 ![]() |
J'ai modifié ma fonction mais elle bug encore.
La première fois tout se passe à peu près bien si je tente d'enregidtré le même fichier mais la seule chose, les feuilles se ferment bien mais pas l'application Excel, il me reste une page sans fichier ouvert. Puis la seconde fois, j'ai une erreur car mon fichier ne se ferme pas et il est impossible de l'enregistrer??? Code :
|
||
|
|
00
|
|
|
#7 | ||
![]() ![]() Maintenance données produits Inscription : décembre 2005 Messages : 3 939 ![]() |
Bonjour,
Comment est-ce que le fichier Excel est ouvert ? Voila comment je ferai (avec la fonction IsFileOpen de la faq) si le fichier a été ouvert par l'utilisateur : Code :
|
||
|
|
00
|
|
|
#8 |
|
Nouveau Membre du Club
![]() Inscription : juillet 2008 Messages : 166 ![]() |
Cette routine il faut la mettre dans un module telle qu'elle ou la mettre dans la procédure.
En la mettant dans la procédure cela me donne une erreur dans le getobject. |
|
|
00
|
|
|
#9 | ||||
|
Nouveau Membre du Club
![]() Inscription : juillet 2008 Messages : 166 ![]() |
Voilà la fonction complète et qui fonctionne
Merci LedZeppII . Sans toi je crois que je n'y serais pas arrivé avant un bon moment. Reste plus qu'un petit soucis de compatibilité des fichiers excel. Je vais fouiller un peu. Voici le code si cela peut intéresser quelqu'un Code :
Code :
|
||||
|
|
00
|
|
|
#10 | |||||||
![]() ![]() Maintenance données produits Inscription : décembre 2005 Messages : 3 939 ![]() |
Citation:
Elle sert juste à montrer comment exploiter le résultat de IsFileOpen, et agir en conséquence. Voila mon code complet: Code :
On en profite pour renommer la sub avec nom plus parlant : Code :
Par ailleurs, tu ne verras aucune erreur à cause de On Error Resume Next. J'écrirai la fonction (sous un autre nom) de cette manière : Code :
|
|||||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com