Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion obyone
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

obyone

XLDnaute Occasionnel
bonjour,
petit problème de syntaxe, je pense, cause l'erreur 53.

sur ma feuille 1, j'ai un tableau qui se remplis automatiquement à l'ouverture avec les noms des fichiers .pdf d'un dossier,
j'aimerais récupérer, la date de la dernière modification du fichier et l'inserer sans la 3ème colonne.
mais je n'y arrive pas.

merci d'avance pour votre aide
 

Pièces jointes

Re : filedatetime

Bonjour

d'après l'aide VBA de la fonction FileDateTime, il faut le mettre le nom du ficher AVEC son chemin complet
donc cette ligne à modifier

myDate = FileDateTime(myPath & "\" & myFile)
 
Re : filedatetime

merci j'ai la date mais j'ai un problème voila ce qu'il m'affiche

pour le 1.pdf, 05/07/2015 00:00
pour le 2.pdf, 05/07/2015

or il devrait m'afficher 1.pdf : 07/05/2015 et pour le 2.pdf : 21/03/2014

d'ou peut venir le probleme?


Private Sub Workbook_Open()

Application.ScreenUpdating = False
Dim myPath As String, myFile As String, myDate As String

myPath = "C:\test"
myFile = Dir(myPath & "\*.pdf")
myDate = FileDateTime(myPath & "\" & myFile)
C = 2
Do While myFile <> ""
Sheets("feuil1").Cells(C, 1) = myFile
Sheets("feuil1").Cells(C, 3) = Format(myDate, "dd/mm/yyyy")
myFile = Dir()
C = C + 1
Loop


End Sub
 
Re : filedatetime

Re,

Parce que dans ta boucle do loop, tu ne mets pas à jour le MyDate..

Code:
Private Sub Workbook_Open()

Application.ScreenUpdating = False
Dim myPath As String, myFile As String, myDate As String

'récupère le path dans lequel se trouve le fichier ouvert (Date.xlsm)
'va donc lister les fichiers pdf du meme répertoire
myPath = ActiveWorkbook.Path
myFile = Dir(myPath & "\*.pdf")
myDate = FileDateTime(myPath & "\" & myFile)
C = 2
Do While myFile <> ""
    Sheets("feuil1").Cells(C, 1) = myFile
    myDate = FileDateTime(myPath & "\" & myFile)
    Sheets("feuil1").Cells(C, 3) = Format(myDate, "dd/mm/yyyy")
    myFile = Dir()
    C = C + 1
Loop


End Sub

pour débugger ton programme, utilise le mode pas à pas (touche F8)
tu peux suivre ainsi l'évolution de tes variables ligne à ligne

PS: j'ai modifié la ligne pour le path. car chez moi, je n'ai pas tes fichiers 1 et 2.pdf
 
Re : filedatetime

merci vgendron
ca fonctionne, je débute en vba ou est ce que je peut trouver "la construction" des divers fonctions vba. pour eviter que je passe toutes les 5 minutes vous déranger sur le forum?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…