Supprimer fichier excel avec macro
Résolu/Fermé
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
-
8 avril 2009 à 10:57
jah_haile_selassie Messages postés 60 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 25 juin 2009 - 10 avril 2009 à 14:44
jah_haile_selassie Messages postés 60 Date d'inscription mardi 31 mars 2009 Statut Membre Dernière intervention 25 juin 2009 - 10 avril 2009 à 14:44
A voir également:
- Supprimer fichier excel avec macro
- Fichier bin - Guide
- Supprimer rond bleu whatsapp - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Fichier epub - Guide
- Fichier impossible à supprimer - Guide
44 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
8 avril 2009 à 21:44
8 avril 2009 à 21:44
autant pour moi... Il faut effectivement tester d'abord l'existence du fichier texte :
If Dir("Chemin & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt", vbNormal) = "" Then
fichiertexte = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt"
Call auto_open
Call creation
peut être?
If Dir("Chemin & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt", vbNormal) = "" Then
fichiertexte = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt"
Call auto_open
Call creation
peut être?
Utilisateur anonyme
9 avril 2009 à 08:53
9 avril 2009 à 08:53
Mon post n'était pas pour toi pijaku, ton code faisait bien le test. Par contre la reprise de jah_haile_selassie est erronée.
Mais bon, il semble satisfait ...
Mais bon, il semble satisfait ...
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 09:31
9 avril 2009 à 09:31
Bonjour Priouman;
C'est vrai que je suis allé trop vite :( en effet mon effacement ne se lance plus! comment faire le test que le fichier texte est créé? et ce fichier lorsque j'indique l'emplacement il n'y est pas!
Merci encore d'éclairer ma lanterne.
Bonne journée a vous
C'est vrai que je suis allé trop vite :( en effet mon effacement ne se lance plus! comment faire le test que le fichier texte est créé? et ce fichier lorsque j'indique l'emplacement il n'y est pas!
Merci encore d'éclairer ma lanterne.
Bonne journée a vous
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 09:53
9 avril 2009 à 09:53
En plus je pense que j'aurais tjrs le même problème! Parceque mon but n'est pas celui d'effacer tout le contenu du dossier mais une partie du dossier. Exemple supprimer seulement des fichiers contenus dans le dossier qui ont été créé et sauvegarde il y'a par exemple 2 ou3 jours de cela... Et la je bloque.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
9 avril 2009 à 11:00
9 avril 2009 à 11:00
Bonjour,
Pour le test voit mon post n°21.
Pour le choix des fichiers à effacer, donne nous le nom de sauvegarde de tes fichiers.
Pour le test voit mon post n°21.
Pour le choix des fichiers à effacer, donne nous le nom de sauvegarde de tes fichiers.
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 11:07
9 avril 2009 à 11:07
Bon bon...J'ai fais ceci:
Private Sub Workbook_Open()
Dim Chemin As String
Dim fichierTexte As String
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
If Dir(Chemin & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt", vbNormal) = "" Then
fichierTexte = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt"
Call auto_open
Call creation
End If
Call creation
End Sub
call creation c'est l'appel de ma procedure de copie et de sauvegarde de fichier excel et call auto_open c'est celle de ma procedure de suppression de fichier. Je fait d'abords un test en créant un fichier texte ayant la date du système comme nom et je verifie s'il existe. ensuite je lance mon effacement et après je lance ma creation. Le blème c'est que mon effacement se lancement plusieurs fois dans la journée alors qu'il devrait se lancer qu'une seule fois!
Quelqu'un a t-il une idée qui marche? et dites moi s'il vous plaît comment ça marche?
Le nom de sauvegarde de mes fichiers sont : test- 9-4-2009 - 10H53m16s.xls Il s'agit juste de la date courante du nom du fichier et de l'heure courante
Je précise que je n'ai aucune erreur de compilation sur ma workbook_open.
Merci
Private Sub Workbook_Open()
Dim Chemin As String
Dim fichierTexte As String
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
If Dir(Chemin & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt", vbNormal) = "" Then
fichierTexte = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".txt"
Call auto_open
Call creation
End If
Call creation
End Sub
call creation c'est l'appel de ma procedure de copie et de sauvegarde de fichier excel et call auto_open c'est celle de ma procedure de suppression de fichier. Je fait d'abords un test en créant un fichier texte ayant la date du système comme nom et je verifie s'il existe. ensuite je lance mon effacement et après je lance ma creation. Le blème c'est que mon effacement se lancement plusieurs fois dans la journée alors qu'il devrait se lancer qu'une seule fois!
Quelqu'un a t-il une idée qui marche? et dites moi s'il vous plaît comment ça marche?
Le nom de sauvegarde de mes fichiers sont : test- 9-4-2009 - 10H53m16s.xls Il s'agit juste de la date courante du nom du fichier et de l'heure courante
Je précise que je n'ai aucune erreur de compilation sur ma workbook_open.
Merci
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
9 avril 2009 à 11:13
9 avril 2009 à 11:13
Ton fichier texte ne devrait pas tenir compte de l'heure et des minutes :
fichierTexte = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".txt"
Sinon effectivement le test ne trouve pas le fichier..... car il n'existe pas.
Ensuite pour le choix de l'effacement c'est beaucoup plus difficile. Il faudrait peut être passer par un userform.
fichierTexte = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".txt"
Sinon effectivement le test ne trouve pas le fichier..... car il n'existe pas.
Ensuite pour le choix de l'effacement c'est beaucoup plus difficile. Il faudrait peut être passer par un userform.
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 11:20
9 avril 2009 à 11:20
Oui justement mais je ne comprends pas pourquoi le fichier n'existe pas? Dois-je l'initialiser avant le if du test?
Dois-je faire ceci ? :--> ActiveWorkbook.Save Filename:=fichierTexte. et Où ?
Dois-je faire ceci ? :--> ActiveWorkbook.Save Filename:=fichierTexte. et Où ?
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
9 avril 2009 à 11:30
9 avril 2009 à 11:30
Non si tu créé un fichier à l'instant T en le nommant : 9-4-2009 11h20m54s.txt. Quand tu va réouvrir ton fichier excel 5 sec plus tard, il va cherche 9-4-2009 11h20m59s.txt et ne le trouvera pas!!!
Pour la suppression de tes fichiers il serait intéressant de les enregistrer d'abord dans un sous dossier à la date du jour. essaie d'ajouter à ta sub creation : mkdir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & CDate(date)
mkdir créé un nouveau dossier...
ensuite à ta macro auto_open tu ajoutes quelque chose comme ce que je mets en gras :
Dim Fic As String
Dim jour As String
jour = InputBox("saisir la date à laquelle vous souhaitez supprimer les fichiers", "date")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour)
Do While Fic <> ""
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic
Fic = Dir
Loop
Je ne suis pas sur de moi, et ne sais pas si ça fonctionne mais c'est une piste.
Pour la suppression de tes fichiers il serait intéressant de les enregistrer d'abord dans un sous dossier à la date du jour. essaie d'ajouter à ta sub creation : mkdir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & CDate(date)
mkdir créé un nouveau dossier...
ensuite à ta macro auto_open tu ajoutes quelque chose comme ce que je mets en gras :
Dim Fic As String
Dim jour As String
jour = InputBox("saisir la date à laquelle vous souhaitez supprimer les fichiers", "date")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour)
Do While Fic <> ""
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic
Fic = Dir
Loop
Je ne suis pas sur de moi, et ne sais pas si ça fonctionne mais c'est une piste.
Utilisateur anonyme
9 avril 2009 à 11:51
9 avril 2009 à 11:51
Pour la partie lancée à l'ouverture du classeur, voila qui marchera mieux (enfin je crois!)
Private Sub Workbook_Open()
Chemin = "c:\" ' mettre le chemin ou est le fichier à tester
NomFic = CLng(Date) & ".txt" ' nom du fichier CLng transforme la date en numérique Long ça évite les manipulation de chaine
If Dir(Chemin & NomFic) = "" Then 'si le fichier de la date du jour n'existe pas
Set fs = CreateObject("Scripting.FileSystemObject") 'on crée le fichier date du jour
Set a = fs.CreateTextFile(Chemin & NomFic, True)
a.Close
Call auto_open ' on lance l'effacement
End If ' Il n'y a pas de sinon puisque si le fichier existe on ne fait rien
Call creation 'on appelle l'autre proc
End Sub
A+
Private Sub Workbook_Open()
Chemin = "c:\" ' mettre le chemin ou est le fichier à tester
NomFic = CLng(Date) & ".txt" ' nom du fichier CLng transforme la date en numérique Long ça évite les manipulation de chaine
If Dir(Chemin & NomFic) = "" Then 'si le fichier de la date du jour n'existe pas
Set fs = CreateObject("Scripting.FileSystemObject") 'on crée le fichier date du jour
Set a = fs.CreateTextFile(Chemin & NomFic, True)
a.Close
Call auto_open ' on lance l'effacement
End If ' Il n'y a pas de sinon puisque si le fichier existe on ne fait rien
Call creation 'on appelle l'autre proc
End Sub
A+
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 11:56
9 avril 2009 à 11:56
Vraiment désolé encore mais j'ai une question toute bête ; en faite dans ma procedure creation j'ai une boucle et je ne sais pas où mettre la création du dossier c'est-a-dire--> MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & CDate(Date).
je le met où? avant ou dant la boucle?
je le met où? avant ou dant la boucle?
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 13:16
9 avril 2009 à 13:16
comment faire pour que l'efacement se lance une seule fois? étant donné que a l'heure du système ma macro se lance tjrs? alors que je veu juste qu'elle efface une fois et en plus je ne trouve pas mon fichier texte créé. :(
J'ai tenté de créer un dossier de sauvegarde avec mkdir comme pijaku me l'as conseillé mais rien a faire
J'ai tenté de créer un dossier de sauvegarde avec mkdir comme pijaku me l'as conseillé mais rien a faire
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
9 avril 2009 à 14:39
9 avril 2009 à 14:39
Private Sub Workbook_Open()
Dim Chemin As String
Dim fichierTexte As String
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
NomFic = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".txt"
If Dir(Chemin & NomFic) = "" Then 'si le fichier de la date du jour n'existe pas
Call auto_open ' on lance l'effacement
Set fs = CreateObject("Scripting.FileSystemObject") 'on crée le fichier date du jour
Set a = fs.CreateTextFile(Chemin & NomFic, True)
a.Close
Call creation 'on appelle l'autre proc
End If ' Il n'y a pas de sinon puisque si le fichier existe on ne fait rien
Call creation 'on appelle l'autre proc
End Sub
Voici ce que j'ai fait et j'arrive a lancer une seule fois mon effacement et créer mon fichier texte nommé avec la date courante Trop content!!! en tout cas comment ça marche et vous les mecs c'est de la bombe!!!!
Bon j'ai toujours le problème de choisir par exemple uniquement les fichiers copiés et sauvégardés il y'a a peu près 2 ou 3 jours? Aidez moi
Dim Chemin As String
Dim fichierTexte As String
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
NomFic = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".txt"
If Dir(Chemin & NomFic) = "" Then 'si le fichier de la date du jour n'existe pas
Call auto_open ' on lance l'effacement
Set fs = CreateObject("Scripting.FileSystemObject") 'on crée le fichier date du jour
Set a = fs.CreateTextFile(Chemin & NomFic, True)
a.Close
Call creation 'on appelle l'autre proc
End If ' Il n'y a pas de sinon puisque si le fichier existe on ne fait rien
Call creation 'on appelle l'autre proc
End Sub
Voici ce que j'ai fait et j'arrive a lancer une seule fois mon effacement et créer mon fichier texte nommé avec la date courante Trop content!!! en tout cas comment ça marche et vous les mecs c'est de la bombe!!!!
Bon j'ai toujours le problème de choisir par exemple uniquement les fichiers copiés et sauvégardés il y'a a peu près 2 ou 3 jours? Aidez moi
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
9 avril 2009 à 18:55
9 avril 2009 à 18:55
pour "choisir" les fichiers à effacer, tu ajoutes une inputbox dans ta sub "effacement". Du style :
dim jour as string
jour = inputbox("saisir la date des fichiers à effacer. Attention au format!!!","effacer")
et après ça tu efface le contenu du sous-dossier dont le nom correspond à la date que tu as saisi
dim jour as string
jour = inputbox("saisir la date des fichiers à effacer. Attention au format!!!","effacer")
et après ça tu efface le contenu du sous-dossier dont le nom correspond à la date que tu as saisi
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
10 avril 2009 à 10:17
10 avril 2009 à 10:17
Bonjour Pijaku, et merci encore pour la patience!!!
N y'a-t-il pas une solution sans que l'utilisateur ne soit appelé a saisir la date? :( Et en plus je voulais savoir c'est sur qu'elle format la date? ce format ci ----> 10-4-2009? Et---->"effacer" fait référence a quoi? . Et en plus je n'ai qu'un seul dossier de sauvegarde je veux juste effacer certains fichiers qui sont dans un même dossier mais en fonction de la date.
Merci encore et j'espères que je suis claire dans mes questions.
Bonne journée.
N y'a-t-il pas une solution sans que l'utilisateur ne soit appelé a saisir la date? :( Et en plus je voulais savoir c'est sur qu'elle format la date? ce format ci ----> 10-4-2009? Et---->"effacer" fait référence a quoi? . Et en plus je n'ai qu'un seul dossier de sauvegarde je veux juste effacer certains fichiers qui sont dans un même dossier mais en fonction de la date.
Merci encore et j'espères que je suis claire dans mes questions.
Bonne journée.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
10 avril 2009 à 10:21
10 avril 2009 à 10:21
Bonjour,
Non à ta question. La saisie de date est inévitable car tu veux supprimer les fichiers enregistrés il y a 3 jours ou 2 jours, ça n'est pas fixe. C'est pourquoi initialement, je te proposais de créer un sous-dossier à la date du jour (au format 10-4-2009 si tu veux), pour pouvoir supprimer simplement son contenu quand tu le souhaites (format 10-4-2009 pour répondre à ta 2ème interrogation).
Non à ta question. La saisie de date est inévitable car tu veux supprimer les fichiers enregistrés il y a 3 jours ou 2 jours, ça n'est pas fixe. C'est pourquoi initialement, je te proposais de créer un sous-dossier à la date du jour (au format 10-4-2009 si tu veux), pour pouvoir supprimer simplement son contenu quand tu le souhaites (format 10-4-2009 pour répondre à ta 2ème interrogation).
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
10 avril 2009 à 11:00
10 avril 2009 à 11:00
Oui mais pour les rendre fixes on peut par exemple supprimer des fichiers sauvegarder il y'a 2 jours. Par exemple si j'ai fait mes sauvegardes lundi alors je les supprime le mercredi. ça c'est possible ou pas?
Et voici ce que j'ai rajouter sur ma proc d'effacement:
Sub auto_open()
Dim Fic As String
Dim Jour As String
Jour = InputBox("saisir la date à laquelle vous souhaitez supprimer les fichiers", "date")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Jour)
Do While Fic <> ""
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic & Jour
Fic = Dir
Loop
End Sub
J'ai mis ma question comme tu me l'as conseillé et dans ma création j'ai fait ceci:
Sub creation()
Dim Chemin As String
Dim fname As String
MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & CDate(Date)
debut:
Start = Timer
intervalle = 60
Do While Timer < Start + intervalle
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs Filename:=fname
GoTo debut
End Sub
Mais J'ai une erreur sur MkDir on me dit chemin introuvable. Peut-être que je fais mal ma création de dossier. Et pourtant mon chemin me semble correcte
:(
Et voici ce que j'ai rajouter sur ma proc d'effacement:
Sub auto_open()
Dim Fic As String
Dim Jour As String
Jour = InputBox("saisir la date à laquelle vous souhaitez supprimer les fichiers", "date")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Jour)
Do While Fic <> ""
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic & Jour
Fic = Dir
Loop
End Sub
J'ai mis ma question comme tu me l'as conseillé et dans ma création j'ai fait ceci:
Sub creation()
Dim Chemin As String
Dim fname As String
MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & CDate(Date)
debut:
Start = Timer
intervalle = 60
Do While Timer < Start + intervalle
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs Filename:=fname
GoTo debut
End Sub
Mais J'ai une erreur sur MkDir on me dit chemin introuvable. Peut-être que je fais mal ma création de dossier. Et pourtant mon chemin me semble correcte
:(
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
10 avril 2009 à 11:35
10 avril 2009 à 11:35
Dur dur!!!
Effectivement : MkDir chemin introuvable.... Après recherches... voilà pourquoi :
c'est le format de CDate(Date) qui ne convient pas!!! en effet, il ne veux pas créer un sous-dossier nommé 10/04/2009, les slash le gènent... Alors la solution est :
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
MkDir "Ton chemin complet\" & jour
Effectivement : MkDir chemin introuvable.... Après recherches... voilà pourquoi :
c'est le format de CDate(Date) qui ne convient pas!!! en effet, il ne veux pas créer un sous-dossier nommé 10/04/2009, les slash le gènent... Alors la solution est :
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
MkDir "Ton chemin complet\" & jour
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
10 avril 2009 à 12:14
10 avril 2009 à 12:14
Oui Dur pour moi comme tu le dit!
Avec les modification apporter il me crèe le dossier nommé par la date courante mais il ne me pose pas la question de savoir a quel date je veux supprimer mes fichiers; Ce qui est normale vu ke tu m'a conseillé de mettre ceci--->jour = Format(Date, "dd_mm_yyyy") au lieu de ceci---->Jour = InputBox("saisir la date à laquelle vous souhaitez supprimer les fichiers", "date")?
En plus il ne me crèè pas mes fichiers de sauvegarde dans le dossier nommé avec la date courante: voici le code que j'ai:
------------------------Dans ma procedure de creation--------------------------------------
Sub creation()
Dim Chemin As String
Dim fname As String
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour
debut:
Start = Timer
intervalle = 60
Do While Timer < Start + intervalle
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs Filename:=fname
GoTo debut
End Sub
----------------------Dans ma procedure d'effacement-----------------------------------
Sub auto_open()
Dim Fic As String
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour)
Do While Fic <> ""
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic & jour
Fic = Dir
Loop
End Sub
En plus mon effacement des fichiers ne fonctionne plus :(
-------------
Je sais que c'est dur mais j'ai vraiment besoin d'un gros coup de pouce.
Avec les modification apporter il me crèe le dossier nommé par la date courante mais il ne me pose pas la question de savoir a quel date je veux supprimer mes fichiers; Ce qui est normale vu ke tu m'a conseillé de mettre ceci--->jour = Format(Date, "dd_mm_yyyy") au lieu de ceci---->Jour = InputBox("saisir la date à laquelle vous souhaitez supprimer les fichiers", "date")?
En plus il ne me crèè pas mes fichiers de sauvegarde dans le dossier nommé avec la date courante: voici le code que j'ai:
------------------------Dans ma procedure de creation--------------------------------------
Sub creation()
Dim Chemin As String
Dim fname As String
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour
debut:
Start = Timer
intervalle = 60
Do While Timer < Start + intervalle
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs Filename:=fname
GoTo debut
End Sub
----------------------Dans ma procedure d'effacement-----------------------------------
Sub auto_open()
Dim Fic As String
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour)
Do While Fic <> ""
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic & jour
Fic = Dir
Loop
End Sub
En plus mon effacement des fichiers ne fonctionne plus :(
-------------
Je sais que c'est dur mais j'ai vraiment besoin d'un gros coup de pouce.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
10 avril 2009 à 12:16
10 avril 2009 à 12:16
je te propose de refaire le code en entier pour que cela fonctionne. Peux tu me remettre tout ton code ici.
1- ton workbook_open
2- ta sub creation
3- ta sub auto_open (effacement)
et je vais te bricoler un truc qui fonctionne.
1- ton workbook_open
2- ta sub creation
3- ta sub auto_open (effacement)
et je vais te bricoler un truc qui fonctionne.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
10 avril 2009 à 12:28
10 avril 2009 à 12:28
Pas la peine de remettre le code... Il y est déjà 3 ou 4 fois...
Essaye ceci :
Sub creation()
Dim Chemin As String
Dim fname As String
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour
debut:
Start = Timer
intervalle = 60
Do While Timer < Start + intervalle
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs FileName:=fname
GoTo debut
End Sub
Sub auto_open()
Dim var, Fic As String
var = InputBox("Saisir la date à laquelle vous souhaitez effacer les fichiers. Attention bien saisir au format dd_mm_yyyy!!", "date d'effacement")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & var)
If Fic <> "" Then
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic
Else
MsgBox ("le sous-dossier que vous souhaitez effacer est vide. Veuillez vérifier.")
End If
End Sub
Private Sub Workbook_Open()
Dim Chemin As String
Dim fichierTexte As String
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
NomFic = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".txt"
If Dir(Chemin & NomFic) = "" Then 'si le fichier de la date du jour n'existe pas
Call auto_open ' on lance l'effacement
Set fs = CreateObject("Scripting.FileSystemObject") 'on crée le fichier date du jour
Set a = fs.CreateTextFile(Chemin & NomFic, True)
a.Close
Call creation 'on appelle l'autre proc
End If ' Il n'y a pas de sinon puisque si le fichier existe on ne fait rien
Call creation 'on appelle l'autre proc
End Sub
Essaye ceci :
Sub creation()
Dim Chemin As String
Dim fname As String
Dim jour As String
jour = Format(Date, "dd_mm_yyyy")
MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour
debut:
Start = Timer
intervalle = 60
Do While Timer < Start + intervalle
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs FileName:=fname
GoTo debut
End Sub
Sub auto_open()
Dim var, Fic As String
var = InputBox("Saisir la date à laquelle vous souhaitez effacer les fichiers. Attention bien saisir au format dd_mm_yyyy!!", "date d'effacement")
Fic = Dir("\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & var)
If Fic <> "" Then
Kill "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & Fic
Else
MsgBox ("le sous-dossier que vous souhaitez effacer est vide. Veuillez vérifier.")
End If
End Sub
Private Sub Workbook_Open()
Dim Chemin As String
Dim fichierTexte As String
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
NomFic = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & ".txt"
If Dir(Chemin & NomFic) = "" Then 'si le fichier de la date du jour n'existe pas
Call auto_open ' on lance l'effacement
Set fs = CreateObject("Scripting.FileSystemObject") 'on crée le fichier date du jour
Set a = fs.CreateTextFile(Chemin & NomFic, True)
a.Close
Call creation 'on appelle l'autre proc
End If ' Il n'y a pas de sinon puisque si le fichier existe on ne fait rien
Call creation 'on appelle l'autre proc
End Sub
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
10 avril 2009 à 14:05
10 avril 2009 à 14:05
Salut,
J'ai testé exactement ce que tu m'a donné sans rien changé juste en vérifiant un peu pour ma comprehension. Mais j'ai tjrs cette erreur lié a mkdir! L'erreur d'exécution '75' Erreur d'accès chemin fichier. C'est du a quoi stp? Et pourtant j'ai mon dossier nommé avec la date qui se crèe :(
J'ai testé exactement ce que tu m'a donné sans rien changé juste en vérifiant un peu pour ma comprehension. Mais j'ai tjrs cette erreur lié a mkdir! L'erreur d'exécution '75' Erreur d'accès chemin fichier. C'est du a quoi stp? Et pourtant j'ai mon dossier nommé avec la date qui se crèe :(
jah_haile_selassie
Messages postés
60
Date d'inscription
mardi 31 mars 2009
Statut
Membre
Dernière intervention
25 juin 2009
10 avril 2009 à 14:10
10 avril 2009 à 14:10
Et normalement quand ça crèèe le dossier ça doit créé aussi les fichiers dedans non? Mais non ça ne me crèè rien dedans.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 759
10 avril 2009 à 14:21
10 avril 2009 à 14:21
Fectivement!!!
Regardes ta sub creation :
tu créés un répertoire : MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour
et tu enregistres sous :
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs FileName:=fname
Il convient donc d'ajouter au Chemin : & jour
Regardes ta sub creation :
tu créés un répertoire : MkDir "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\" & jour
et tu enregistres sous :
Chemin = "\\Ds-srv-hector\commun\DPAPH\Service Tarification\Sauvegarde temps réel\"
fname = Chemin & "test- " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " - " & Hour(Time) & "H" & Minute(Time) & "m" & Second(Time) & "s" & ".xls"
ActiveWorkbook.SaveCopyAs FileName:=fname
Il convient donc d'ajouter au Chemin : & jour