VBA - Sélection chronologique de fichier dans un répertoire
Résolu/Fermé
rEVOLV3r
Messages postés
223
Date d'inscription
jeudi 12 août 2010
Statut
Membre
Dernière intervention
21 septembre 2022
-
Modifié par pijaku le 21/07/2014 à 08:32
rEVOLV3r Messages postés 223 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 21 septembre 2022 - 21 juil. 2014 à 11:27
rEVOLV3r Messages postés 223 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 21 septembre 2022 - 21 juil. 2014 à 11:27
A voir également:
- VBA - Sélection chronologique de fichier dans un répertoire
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Ouvrir un fichier .bin - Guide
- Fichier host - Guide
4 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 21/07/2014 à 10:59
Modifié par michel_m le 21/07/2014 à 10:59
bonjour
sans ouvrir les fichiers et en laissant le choix d'essayer d'autres fichiers ou non
avec
???
EcartDates = DateDiff("h", DateModif, Now, vbMonday, vbFirstJan1)
par
EcartDates = DateDiff("h", DateModif, Now)
Michel
sans ouvrir les fichiers et en laissant le choix d'essayer d'autres fichiers ou non
avec
Set ObjFich = CreateObject("Scripting.fileSystemObject")
ChDir "D:\documents" 'A adapter
Fich = Dir("*.txt")
While Fich <> ""
Set nomfich = ObjFich.GetFile(Fich)
dermodif = nomfich.dateLastModified
'tes codes d'évaluation
Rep = MsgBox(Fich & "en cours, continuer ?", vbYesNo)
If Rep = vbNo Then Exit Sub
Fich = Dir
Wend
???
EcartDates = DateDiff("h", DateModif, Now, vbMonday, vbFirstJan1)
par
EcartDates = DateDiff("h", DateModif, Now)
Michel
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 751
21 juil. 2014 à 08:35
21 juil. 2014 à 08:35
Salut,
Tu peux faire comme ça :
Tu peux faire comme ça :
If EcartDates < Limite Then 'MsgBox ("OF " & nomdufichier & " EN COURS !" & Chr(10) & "Réessayez dans : " & Limite - EcartDates & "Heures") wbsource.Close False Else 'ICI le traitement à faire si fichier à traiter ' ' End If
rEVOLV3r
Messages postés
223
Date d'inscription
jeudi 12 août 2010
Statut
Membre
Dernière intervention
21 septembre 2022
28
21 juil. 2014 à 10:05
21 juil. 2014 à 10:05
Bonjour,
Merci beaucoup pour votre réponse, mais malheureusement cela ne fonctionne pas.
Il faudrait que lorsque le code repère un fichier trop jeune, il ne le prenne pas en compte mais continue de trier les autres. Voici une petite explication graphique ;-)
Répertoire :
fichier1 (vieux)
fichier2 (jeune)
fichier3 (vieux)
fichier4 (vieux)
Step 1 macro : fichier1 analysé -> vieux -> déplacé dans un autre répertoire
Step 2 macro : fichier2 analysé -> jeune -> on passe au suivant sans le toucher
step 3 macro : fichier3 analysé -> vieux -> déplacé dans un autre répertoire
etc.
Il faudrait donc qu'excel passe au suivant mais ne le reteste pas, créer une exclusion pour les noms de fichiers testé trop jeunes. S'il n'y a pas de manière facile je créerai une "mémoire tampon" avec les noms des fichiers à exclure...
Meilleures salutations,
rEVOLV3r
Merci beaucoup pour votre réponse, mais malheureusement cela ne fonctionne pas.
Il faudrait que lorsque le code repère un fichier trop jeune, il ne le prenne pas en compte mais continue de trier les autres. Voici une petite explication graphique ;-)
Répertoire :
fichier1 (vieux)
fichier2 (jeune)
fichier3 (vieux)
fichier4 (vieux)
Step 1 macro : fichier1 analysé -> vieux -> déplacé dans un autre répertoire
Step 2 macro : fichier2 analysé -> jeune -> on passe au suivant sans le toucher
step 3 macro : fichier3 analysé -> vieux -> déplacé dans un autre répertoire
etc.
Il faudrait donc qu'excel passe au suivant mais ne le reteste pas, créer une exclusion pour les noms de fichiers testé trop jeunes. S'il n'y a pas de manière facile je créerai une "mémoire tampon" avec les noms des fichiers à exclure...
Meilleures salutations,
rEVOLV3r
rEVOLV3r
Messages postés
223
Date d'inscription
jeudi 12 août 2010
Statut
Membre
Dernière intervention
21 septembre 2022
28
21 juil. 2014 à 11:27
21 juil. 2014 à 11:27
Merci bien a tous pour votre aide ! Vous m'avez donné l'idée pour résoudre mon problème. :-)
J'ai juste utilisé Fichier = Dir et un...goto ouai j'en suis pas fier mais ca m'évite de devoir modifié ma macro de 743 lignes ^^
Merci bien je mets en résolu.
J'ai juste utilisé Fichier = Dir et un...goto ouai j'en suis pas fier mais ca m'évite de devoir modifié ma macro de 743 lignes ^^
Merci bien je mets en résolu.