J'ouvre un fichier CSV avec Excel, je le sauvegarde ensuite en XLS.
Je ferme l'Excel mais l'objet Excel reste en mémoire et du coup je ne peux plus supprimer le CSV (DeleteFile renvois une erreur 70 et on voit bien l'objet Excel qui reste en mémoire malgré le Nothing)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Set AppExcel = New Excel.Application With AppExcel .Workbooks.Open NomFichierExportAvecCheminCSV, ReadOnly:=True, Delimiter:=";", Local:=True .Visible = False End With With AppExcel.Workbooks(NomFichierExportCSV).Worksheets(1).Cells .Rows("1:1").AutoFilter .EntireColumn.AutoFit If TrierCroissant Then .Sort Key1:=.Range("A1"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortTextAsNumbers End If End With AppExcel.Workbooks(NomFichierExportCSV).Worksheets(1).Name = NomFeuille AppExcel.Workbooks(NomFichierExportCSV).SaveAs Filename:=NomFichierExportAvecChemin, FileFormat:=xlExcel9795, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False, Local:=True AppExcel.Workbooks(NomFichierExport).Close savechanges:=False Set AppExcel = Nothing ' Plantage sur le DeleteFile FSO.DeleteFile (NomFichierExportAvecCheminCSV)
Partager