Déplacement fichier(s) vers dossier le plus récent

Liophylios -  
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je me permets de solliciter votre aide pour un petit bout de code ! :D.

Voici mon soucis :

Je dois transférer plusieurs fichiers vers un dossier.
Rien de compliqué me direz vous mais le soucis c'est que le dossier de destination est issue d'une macro MkDir :

Sub dossier()

MkDir ("C:\Users\h19371\Desktop\DO saisis\DO V2\DO " & " " & Format$(Date, "dd-mm-yyyy") & " " & Format$(Time, "hh-mm"))
MsgBox "Nouveau dommage crée"

End Sub


Donc le nom de mon dossier de destination est variable.

J'aimerai donc pouvoir demander à ma macro de transférer certains fichiers vers le dossier le plus récent d'un répertoire.

Si vous avez d'autres solutions, je suis preneur !

Merci par avance.

A voir également:

5 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Au plus simple, ecrire le dernier repertoire cree dans une cellule et lire cette cellule pour vos transfert
0
Liophylios
 
Bonjour.

Merci de votre réponse mais la macro est utilisée pour du ppt et non excel.
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

Ben oui, si vous le dites.
Vous connaissez le VBA ou pas ??
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonsoir, suggestion:
Sub dossier()
dim nomdossier as string
nomdossier = "C:\Users\h19371\Desktop\DO saisis\DO V2\DO " & " " & Format$(Date, "dd-mm-yyyy") & " " & Format$(Time, "hh-mm")
MkDir (nomdossier)
MsgBox "Nouveau dommage crée: " & nomdossier

End Sub 

cela te convient-il?
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,
Ce n'est pas son souci, la creation de répertoire, c'est de pouvoir transférer des fichiers dans le dernier répertoire créé avec une autre macro ceci sous VBA PowerPoint .
Je propose une mise en mémoire dans un objet quelconque du dernier répertoire créé.
Maintenant, à lui de voir........
0
Liophylios > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour.

Merci f894009 et oui vous avez bien cerné mon problème.

Je débute à peine le VBA et mes connaissances sont donc très limites...
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
cela nous aiderait si tu donnais une vue d'ensemble:
- le dossier est-il créé juste avant de transférer les fichiers?
- les deux opérations (création et transferts) sont-elles dans le même module de code VBA?
0
Liophylios
 
Bonjour.

_ Oui le dossier est crée juste avant le transfert via une macro VBA sur une image.
_ Non, les deux opérations de sont pas dans le même module.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Liophylios
 
si tu déclares la variable nomdossier comme publique, en début de module, tu pourras réuntiliser sa valeur dans les autres modules.
public nomdossier as string
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour a vous deux,
Liophylios:
Non, les deux opérations de sont pas
Oui, mais avez vous besoin de faire des transferts sans a avoir de repertoire a creer, donc utiliser le dernier cree y compris sur reouveture du pptm ???
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
une autre possibilité serait de parcourir le dossier parent pour y rechercher le dossier le plus récent (par nom ou par attribut). c'est peut-être le plus fiable.
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Re,
En effet, plus simple
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour à tous,

Si tu veux garder le chemin en mémoire, c'est la solution de f894009 qui est la plus simple.
Voici une autre méthode avec la base de registre:

 'chemin de la clé
'HKEY_CURRENT_USER\Software\VB and VBA Program Settings\Monappli
Dim mavariable As String
Sub ecriture()
mavariable = "cheminenregistrement"
' Place some settings in the registry.
SaveSetting "Monappli", "Start", "chemin", mavariable
End Sub
Sub lecture()
MsgBox GetSetting(AppName:="Monappli", _
            Section:="Start", _
            Key:="chemin", Default:=mavariable)
End Sub
Sub delete()
DeleteSetting "Monappli"
End Sub


Pour faire les essais tu places le curseur sur ecriture et tu appuies sur F5, de même pour lecture et delete
Tu peux fermer ta présentation, tu as ton chemin en mémoire à l'ouverture!


@+ Le Pivert
0