VBA Date modification d’un fichier

Bonjour à tous!

Je viens vers vous car je ne sais comment m’y prendre.. je voudrais, dans un label ou une textbox, obtenir la date de modification d’un autre fichier Excel (par exemple, C:\Hugo\excel123.xls). Le label ou la textbox se situent dans un userform.

j’ai lu dans un autre topic ce code mais il ne fonctionne pas chez moi car je ne veux pas que la date de modification apparaisse dans une pop-up :

Sub Test()

Dim oFSO As Scripting.FileSystemObject
Dim oFl As Scripting.File

Set oFSO = New Scripting.FileSystemObject
Set oFl = oFSO.GetFile("C:\test.txt")

MsgBox oFl.DateLastModified

End Sub

merci pour votre aide

Ps : je ne peux vous inclure le fichier Excel car je travaille dans un environnement secret défense.

Bonsoir,

dans votre code :
Nom_De_USF.Nom_Label.Caption = oFl.DateLastModified

Bien sûr il faut garder les lignes de recherche de fichier !
Peut-être faudra t il utiliser FORMAT pour formater le texte vu dans le label.

@ bientôt

LouReeD

Hello,

D'abord, merci pour ton aide.

Du coup j'ai ce code :

Private Sub UserForm1.Initialize()

Set oFSO = New Scripting.FileSystemObject
Set oFl = oFSO.GetFile("\\...\Incidents.xlsx")

UserForm1.Label1.Caption = oFl.DateLastModified

End Sub

Mais le Label affiche Label1 et non la date de modification du fichier externe..

Bonjour,

Ce n'est pas la bonne syntaxe pour initialiser l'userform

Private Sub UserForm_Initialize()

il te faut "_" à la place de "1." cette procedure doit etre placée a l'intérieur du code de l'userform1.

image

et comme la dit LouReeD , il faudra modifier le format pour avoir la date sans l'heure.

UserForm1.Label1.Caption = Format(oFl.DateLastModified, "dd/mm/yy")

A+

Merci pour ta réponse,

Donc, du coup voici le code avec correction :

image

Mais j'ai une erreur lors du lancement de l'UF :

image

Merci pour votre aide !

Bonjour

Les "Dim" ils sont où ?

L'idée était de remplacer dans le code fourni la ligne MsgBox par la ligne de modification du "Caption" du label...

Et ce code n'a pas besoin d'être dans l'initialisation du USF.

@ bientôt

LouReeD

Il faut surement que tu ajoute la reference

image

Microsoft Scripting Runtime

image

Merci pour vos réponses,

J'ai essayé les deux codes suivants mais aucun ne fonctionne.

Je n'ai pas accès au menu références.. pensez-vous que c'est impossible à mettre en place ?

Private Sub UserForm_Initialize()

Dim oFSO As Scripting.FileSystemObject
Dim oFl As Scripting.File

Set oFSO = New Scripting.FileSystemObject
Set oFl = oFSO.GetFile("\Incidents.xlsx")

UserForm1.Label1.Caption = Format(oFl.DateLastModified, "dd/mm/yy")

End Sub
Private Sub Label1_Click()

Dim oFSO As Scripting.FileSystemObject
Dim oFl As Scripting.File

Set oFSO = New Scripting.FileSystemObject
Set oFl = oFSO.GetFile("\Incidents.xlsx")

UserForm1.Label1.Caption = Format(oFl.DateLastModified, "dd/mm/yy")

End Sub

Bonjour,

ceci fonctionne chez moi avec la référence non cochée :

Sub TextLRD()

    Dim oFSO, oFl

    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set oFl = oFSO.GetFile("C:\TestLRD.txt")

    UserForm1.Label1.Caption = Format(oFl.DateLastModified, "dd/mm/yy")

    UserForm1.Show

End Sub

Ceci est à mettre dans un module standard, on lance, on crée l'objet File, on modifie le label1 et on ouvre le USF.

@ bientôt

LouReeD

Problème résolu. Je vous remercie!

Bonjour,

merci de votre retour et remerciement !
Mais chuuuuute c'est secret !

@ bientôt

LouReeD

Rechercher des sujets similaires à "vba date modification fichier"