Déplacement d’un fichier après traitement
Résolu
mijean94
Messages postés
415
Date d'inscription
Statut
Membre
Dernière intervention
-
mijean94 Messages postés 415 Date d'inscription Statut Membre Dernière intervention -
mijean94 Messages postés 415 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Ce que je cherche à faire :
a) Je récupère, dans un répertoire « nouveau », le fichier avec la date la plus récente, (ça marche),
mais, je souhaiterais trouver le fichier avec la date la plus ancienne (pas trouvé la solution).
b) Je réalise la procédure souhaité … (ça marche)
c) Je voudrais déplacer le fichier qui vient d’être traité vers un autre répertoire « ancien » sans changer le nom de mon fichier (fichier non modifier puisque encore dans le répertoire (nouveau). (pas trouvé la solution)
d) Je recommence en (a) afin de traiter tous les fichiers du répertoire « nouveau » ( ça OK)
Voici le code que j’utilise pour la récupération du fichier le plus récent :
Merci pour l’aide
Bien cordialement
Ce que je cherche à faire :
a) Je récupère, dans un répertoire « nouveau », le fichier avec la date la plus récente, (ça marche),
mais, je souhaiterais trouver le fichier avec la date la plus ancienne (pas trouvé la solution).
b) Je réalise la procédure souhaité … (ça marche)
c) Je voudrais déplacer le fichier qui vient d’être traité vers un autre répertoire « ancien » sans changer le nom de mon fichier (fichier non modifier puisque encore dans le répertoire (nouveau). (pas trouvé la solution)
d) Je recommence en (a) afin de traiter tous les fichiers du répertoire « nouveau » ( ça OK)
Voici le code que j’utilise pour la récupération du fichier le plus récent :
Option Explicit
Public Plus_recent_nom As String
'codes pour la recherche automatique du fichier le plus récent
Sub Cherche_auto1()
Dim Répert1 As Object
Dim Syst_fic As Object
Dim Fic1 As Object
Dim Fic_nom As String
Dim Fic_acces As Date
'Dim Plus_recent_nom As String
Dim Plus_recent_date As Date
Dim Répertoire1 As String
Set Syst_fic = CreateObject("Scripting.FileSystemObject")
'Stop
'Nom du répertoire à scanner
Répertoire1 = "C:\Users\Jean Mi\nouveau\"
Set Répert1 = Syst_fic.GetFolder(Répertoire1)
For Each Fic1 In Répert1.Files
Fic_nom = Fic1.Name
'on ne s'interresse qu'au fichier ".jpg"
If Right(LCase(Fic_nom), 4) = ".jpg" Then
Fic_acces = Fic1.datelastaccessed
If Fic_acces > Plus_recent_date Then
Plus_recent_date = Fic_acces
Plus_recent_nom = Fic_nom
End If
End If
Next
If Plus_recent_nom <> "" Then
MsgBox "le fichier le plus récent est : " & Plus_recent_nom
Else
MsgBox "Pas de fichier trouvé"
End If
MsgBox " Près pour déplacer le fichier qui a été traité ? "
deplacement_du_fichier ‘ lancement de la macro à créer vers le répertoire (ancien)
End Sub
Merci pour l’aide
Bien cordialement
A voir également:
- Déplacement d’un fichier après traitement
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
2 réponses
Bonjour,
Name, instruction
Renomme un fichier, un répertoire ou un dossier sur un disque.
Syntaxe
Name oldpathname As newpathname
La syntaxe de l'instruction Name comprend les éléments suivants :
Élément Description
oldpathname Expression de chaîne indiquant le nom et le chemin du fichier. Cet argument peut contenir le répertoire ou dossier et le lecteur.
newpathname Expression de chaîne indiquant les nouveaux nom et chemin du fichier. Cet argument peut préciser le répertoire ou le dossier et le lecteur. Le nom de fichier indiqué dans l'argument newpathname ne peut pas correspondre à un fichier existant.
Remarques
L'instruction Name renomme un fichier et le déplace le cas échéant vers un nouveau répertoire ou dossier. Elle permet aussi de déplacer un fichier d'un lecteur à un autre, mais elle ne peut renommer un dossier existant que si les arguments newpathname et oldpathname concernent le même lecteur. L'instruction Name ne permet pas de créer un nouveau fichier ou dossier.
Si vous appliquez Name à un fichier ouvert, vous provoquez une erreur. Les fichiers ouverts ne peuvent être renommés avant d'avoir été fermés. Les arguments de Name ne peuvent comporter de caractères génériques (* : multicaractères, ? : caractère unique).
Ex :
Name ancienrep & nom_fichier As nouveaurep & nom_fichier
eric
Name, instruction
Renomme un fichier, un répertoire ou un dossier sur un disque.
Syntaxe
Name oldpathname As newpathname
La syntaxe de l'instruction Name comprend les éléments suivants :
Élément Description
oldpathname Expression de chaîne indiquant le nom et le chemin du fichier. Cet argument peut contenir le répertoire ou dossier et le lecteur.
newpathname Expression de chaîne indiquant les nouveaux nom et chemin du fichier. Cet argument peut préciser le répertoire ou le dossier et le lecteur. Le nom de fichier indiqué dans l'argument newpathname ne peut pas correspondre à un fichier existant.
Remarques
L'instruction Name renomme un fichier et le déplace le cas échéant vers un nouveau répertoire ou dossier. Elle permet aussi de déplacer un fichier d'un lecteur à un autre, mais elle ne peut renommer un dossier existant que si les arguments newpathname et oldpathname concernent le même lecteur. L'instruction Name ne permet pas de créer un nouveau fichier ou dossier.
Si vous appliquez Name à un fichier ouvert, vous provoquez une erreur. Les fichiers ouverts ne peuvent être renommés avant d'avoir été fermés. Les arguments de Name ne peuvent comporter de caractères génériques (* : multicaractères, ? : caractère unique).
Ex :
Name ancienrep & nom_fichier As nouveaurep & nom_fichier
eric
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
Qu'as-tu essayé comme solution pour chercher le fichier le plus ancien?
Qu'est-ce que cela a donné comme résultat?
Qu'est-ce que cela a donné comme résultat?
Merci pour l’aide,
Dans mon cas, lorsque je souhaite déplacer le fichier il n’est pas ouvert et Je ne souhaite pas le renommer mais juste le déplacer de répertoire nouveau vers ancien.
Bien cordialement
Il faudrait peut-être lire ce qui est écrit mijean94 non ?
D'autant plus que je t'ai mâché le boulot en soulignant la partie qui t'intéresse et en plus en te mettant un exemple...
eric
Je vais examiner plus sérieusement ta réponse. Merci
Bien cordialement
Encore merci pour ta réponse. j'avais effectivement très mal regardé cette réponse ou il y a toutes les informations.
bien cordialement