Utilisation de .Close avec Scripting.FileSystemObject

dedead

XLDnaute Nouveau
Bonjour !

Voila, je suis en train de créer un fichier excel de "monitoring". Ce fichier utilise plusieurs macro afin de récupérer des infos venant de plusieurs fichiers Excel différents.

Pour cela, j'utilise la fonction "Scripting.FileSystemObject" afin de parcourir mes différents fichiers et récupérer les datas qui m'intéressent.
Le fonctionnement global est le suivant :


Code:
Set Fso = CreateObject("Scripting.FileSystemObject")
Set NomDossier = Fso.GetFolder(FolderFichiersExcelAParcourir)

For Each objFichier In NomDossier.Files
   ActiveWorkbook.Sheets(FEUILLE1).Cells(FEUILLEDESTINATION, 2).Value = objFichier.Name
   """
   """
   """
Next objFichier

Mes infos sont bien récupérées et tout fonctionne bien, SAUF le fait que tous ces fichiers Excel que je parcoure semblent rester ouverts en "fond" après l'éxecution de la macro. Si je ne quitte pas le fichier de monitoring d'où sont qui récupére les infos, je ne peux ouvrir les autres fichiers Excel qui sont parcourus qu'en Lecture seule.

J'ai tenté de mettre :
NomDossier.Close
En fin de fonction, avant ou après le Next mais VB me sort une erreur : "Object doesn't support this property or method

Quelqu'un aurait une idée de la manière de procéder ?
Merci d'avance ! :)


edit : VB sous Excel 2010 + Windows XP
 

mromain

XLDnaute Barbatruc
Re : Utilisation de .Close avec Scripting.FileSystemObject

Bonjour dedead et bienvenue sur le forum,


En ne voyant que cette partie du code, cela semble étrange tout de même...
Sinon, si le classeur est bien ouvert dans la boucle For Each, essaye de refermer le classeur avec cette ligne de code (avant le Next objFichier).
Application.Workbooks(objFichier.Name).Close False

a+

Edit: salut Pierrot. Plus simple en effet ;)
 

dedead

XLDnaute Nouveau
Re : Utilisation de .Close avec Scripting.FileSystemObject

Yeaah !

Merci mromain ! la solution Application.Workbooks(objFichier.Name).Close False fonctionne parfaitement.
Pierrot, j'ai tenté aussi mais ça me sort la même erreur que précédement.

Pour ce qui est du code, entre le for et le next, c'est principalement de l'attribution de valeur à des cellules, donc je ne l'ai pas mis ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 779
Messages
2 092 046
Membres
105 168
dernier inscrit
makari69