Bonjour à tous, j'ai un problème probablement encore tout bête mais je ne trouve pas la solution.
Dans une fonction DeleteFiles() j'ai une boucle For Each qui boucle sur chaques fichiers d'un répertoire. Les fichiers sont supprimés et vient ensuite un test if else qui doit vérifier si les fichiers sont bien supprimés et écrire les résultat dans un fichier texte.
Si le fichier n'a pas été supprimé "if fso.FileExists(fichier)", ça écrit bien "Echec de supression du fichier..." mais par contre le Else (qui devrait écrire "Fichier supprimé avec succès...") n'est semble t'il pas pris en compte donc ça n'écrit rien du tout. Je ne comprend pas pourquoi.
Voici un bout du code:
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 Dim FolderName, TEMP, MyFile Set WshShell = WScript.CreateObject("WScript.Shell" ) Set fso = WScript.CreateObject("Scripting.FileSystemObject" ) Set MyFile = fso.CreateTextFile("rapport.txt" , True) WINDIR = WshShell.ExpandEnvironmentStrings("%WinDir%" ) DRIVE = WshShell.ExpandEnvironmentStrings("%SystemDrive%" ) TEMP = WshShell.ExpandEnvironmentStrings("%TEMP%" ) FolderName = TEMP if fso.FolderExists(FolderName) then DeleteFiles(FolderName) end if MyFile.Close msgbox("Suppression terminée!") Function DeleteFiles(FolderName) On Error Resume Next Dim ObjFolder Dim ObjFiles Dim ObjFile Set ObjFolder = fso.GetFolder(FolderName) Set ObjFiles = ObjFolder.Files For Each ObjFile In ObjFiles set fichier = ObjFile fichier.Delete if fso.FileExists(fichier) then MyFile.WriteLine("[Echec de suppression du fichier]--- " & fichier) Else MyFile.WriteLine("[Fichier supprimé avec succès]--- " & fichier) end if Next End Function
Partager