Delete

Le
DIP
Bonjour,
J'ai un problème avec cette boucle, je n'arrive pas à exécuter l'écriture
des données dans un fichier et supprimer celui-ci.

For Each objFile in fic
Set f = fso.GetFile(objfile)
If DateDiff("D", objfile.DateCreated, now) > 7 Then
'MsgBox objfile & " a suprimer" & objfile.DateCreated

'On Error Resume Next
Set f = fso.OpenTextFile("c:tempvmtrans.txt", ForAppending,true)
f.write(objfile & " " & objfile.DateCreated)
f.write(Chr(10)+Chr(13))
f.close
fso.DeleteFile f, True
End if
Next

Comment faire pour que cette boucle fonctionne ?
Merci d'avance pour votre aide
Salutations
DIP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilles LAURENT
Le #655544
"DIP" news:
| Bonjour,

Bonjour,

| J'ai un problème avec cette boucle, je n'arrive pas à exécuter
| l'écriture des données dans un fichier et supprimer celui-ci.
[...]

Je suppose que cette boucle consiste à faire le ménage dans un dossier
en supprimant les fichiers datant de plus de 7 jours. Ci-dessous votre
boucle légèrement remaniée :

--- Couper ici ---

' initialisation des objets
Set oFs=CreateObject("Scripting.FileSystemObject")

' ouverture du fichier log
Set oLogFile=oFs.OpenTextFile ("C:Tempvmtrans.txt", 8, True)

' lecture des fichiers présents dans le répertoire spécifié
Set colFiles=oFs.GetFolder ("C:Transfert").Files

' traitement des fichiers
For Each oFile In colFiles

' lecture de la date de création du fichier
If DateDiff ("D", oFile.DateCreated, Now) > 7 Then

' le fichier à plus de sept jours
' écriture de l'information dans le fichier log
oLogFile.WriteLine oFile.DateCreated & " " & oFile.Name

' suppression du fichier
' oFs.DeleteFile oFile.Name, True

End If

Next

' fermeture du fichier log
oLogFile.Close

--- Couper ici ---

--
Gilles LAURENT
http://glsft.free.fr
DIP
Le #655316
Merci bcp
J'ai encore un problème pour la suppression d'un répértoire qui contient des
sous-répertoire vide. J'ai un message d'erreur qui me dit : Permission denied
(j'ai tout les droits)
Voici le code :

For Each B in folder.subfolders
If B.size = 0 Then
'MsgBox B & B.size
Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)
fso.DeleteFolder B, True
End If
Next




"DIP" news:
| Bonjour,

Bonjour,

| J'ai un problème avec cette boucle, je n'arrive pas à exécuter
| l'écriture des données dans un fichier et supprimer celui-ci.
[...]

Je suppose que cette boucle consiste à faire le ménage dans un dossier
en supprimant les fichiers datant de plus de 7 jours. Ci-dessous votre
boucle légèrement remaniée :

--- Couper ici ---

' initialisation des objets
Set oFs=CreateObject("Scripting.FileSystemObject")

' ouverture du fichier log
Set oLogFile=oFs.OpenTextFile ("C:Tempvmtrans.txt", 8, True)

' lecture des fichiers présents dans le répertoire spécifié
Set colFiles=oFs.GetFolder ("C:Transfert").Files

' traitement des fichiers
For Each oFile In colFiles

' lecture de la date de création du fichier
If DateDiff ("D", oFile.DateCreated, Now) > 7 Then

' le fichier à plus de sept jours
' écriture de l'information dans le fichier log
oLogFile.WriteLine oFile.DateCreated & " " & oFile.Name

' suppression du fichier
' oFs.DeleteFile oFile.Name, True

End If

Next

' fermeture du fichier log
oLogFile.Close

--- Couper ici ---

--
Gilles LAURENT
http://glsft.free.fr





Jean
Le #655315
Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)


Retirez cette ligne

Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,

--
Jean - JMST
Belgium

Gilles LAURENT
Le #655313
"Jean" news:
| Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)
|
| Je suppose que ce fichier est déjà ouvert précédemment et non fermé.
|
| Amicalement,

De toute façon cette ligne se situant à l'intérieur de la boucle For
Each, message d'erreur permission refusée garanti ;-)

--
Gilles LAURENT
http://glsft.free.fr
DIP
Le #655312
Bonjour,

Je l'ai supprimé mais j'obtiens tjours le même message d'erreur
Avez-vous une solution ?

Salutations
DIP


Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)


Retirez cette ligne

Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,

--
Jean - JMST
Belgium






Jean
Le #655311
"Jean" news:
Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,


De toute façon cette ligne se situant à l'intérieur de la boucle For
Each, message d'erreur permission refusée garanti ;-)


Pas faux :-)
Mais il devrait au moins supprimer un sous répertoire dans ce cas.

De toute façon c'est un drôle d'endroit pour mettre cette ligne :-)

Amicalement,

--
Jean - JMST
Belgium


Jean
Le #655310
Bonjour,

Je l'ai supprimé mais j'obtiens tjours le même message d'erreur
Avez-vous une solution ?

Salutations
DIP


Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)


Retirez cette ligne

Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,

--
Jean - JMST
Belgium






Ce qui serait plus simple ... tant qu'à faire ... c'est de dire ce que
vous voulez faire exactement ...

Amicalement,

--
Jean - JMST
Belgium



DIP
Le #655309
Bonjour,

Je l'ai supprimé mais j'obtiens toujours le même message d'erreur.
Avez-vous une idée de comment résoudre ce problème ?

Merci d'avance
DIP


"Jean" news:
Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,


De toute façon cette ligne se situant à l'intérieur de la boucle For
Each, message d'erreur permission refusée garanti ;-)


Pas faux :-)
Mais il devrait au moins supprimer un sous répertoire dans ce cas.

De toute façon c'est un drôle d'endroit pour mettre cette ligne :-)

Amicalement,

--
Jean - JMST
Belgium







DIP
Le #655308
Bonjour,

C'est de faire une boucle pour supprimer les répertoires et sous répertoires
qui sont vides (récursivité)

Salutations
DIP


Bonjour,

Je l'ai supprimé mais j'obtiens tjours le même message d'erreur
Avez-vous une solution ?

Salutations
DIP


Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)


Retirez cette ligne

Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,

--
Jean - JMST
Belgium






Ce qui serait plus simple ... tant qu'à faire ... c'est de dire ce que
vous voulez faire exactement ...

Amicalement,

--
Jean - JMST
Belgium








cptnews
Le #655073
Bonsoir pistes à vérifier
1 - Le programe n'essaye t'il pas de supprimer un repertoire ou il se
trouve justement.
2 - Vérifier si tu es / ou le proprietaire du scripte est le
"proprietaire"

bonne chance

;-)




Bonjour,

Je l'ai supprimé mais j'obtiens tjours le même message d'erreur
Avez-vous une solution ?

Salutations
DIP


Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)


Retirez cette ligne

Set fa = fso.OpenTextFile("c:tempVMTrans.txt", ForAppending,true)

Je suppose que ce fichier est déjà ouvert précédemment et non fermé.

Amicalement,

-- Jean - JMST
Belgium






Ce qui serait plus simple ... tant qu'à faire ... c'est de dire ce que vous
voulez faire exactement ...

Amicalement,





Publicité
Poster une réponse
Anonyme