masterpopeye
Messages postés27Date d'inscriptionlundi 8 octobre 2007StatutMembreDernière intervention11 décembre 2007
-
11 déc. 2007 à 12:48
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
12 déc. 2007 à 01:16
Bonjour à tous,
Voila plusieurs heures que je m'arrache les cheveux (le peux qu'il en reste).
J'aimerais trouver le moyen de tester à partir de VB6 si une feuille excel précise est ouverte et la fermer le cas échéant.
J'ai trouvé le test isopen mais je n'arrive pas à le faire fonctionner.
Désolé si cette question peut parraitre stupide mais je suis encore débutant en vb.
Merci de vos réponses
MATHOD
Messages postés20Date d'inscriptionmardi 28 septembre 2004StatutMembreDernière intervention22 mai 2008 11 déc. 2007 à 17:09
ah ! c'est plus hard !
à mon avis il faut faire une gestion d'erreur complète...
voir les instructions raise et on error
en fait tu encadres l'ouverture de ta 'feuille' (open)
par une gestion d'erreur qui te rend un code erreur...
il faut 'trapper' ce code et agir en conséquence,
je suis sur que tu trouveras çà sur ce forum...
cherche à : gestion d'erreur ou open de fichier...
c'est tout ce que je peut te dire...
a+
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 12 déc. 2007 à 01:16
Si tu travailles vraiment sous VB6, tu dois probablement avoir créé des objets Application, Workbook et/ou Worksheet
Tu pourrais probablement parcourir la collection des WorkbookS et voir si le classeur est ouvert ou non.
Quelque chose comme
For Each objBook in xlApp.Workbooks
If objBook = "Le nom que tu cherches" then
objBook.Close
End if
Next
Ça, c'est valable pour les classeurs qui ont été ouverts dans ton application (ta variable Excel.Application). Si le fichier peut être ouvert dans une autre session, il faudrait savoir...