Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA : Vérifier la date d'un fichier texte avant de l'importer

2 réponses
Avatar
Domi
Bonjour,
J'utilise cette macro chaque jour pour ouvrir et mettre en forme un fichier
texte extrait d'un gros système. Cela fonctionne très bien.
Je ne dois surtout pas importer un fichier qui n'a pas été crée le jour
même.
Comment sécuriser cette macro pour qu'elle vérifie que C:\Import\toto.txt
est bien à la date du jour. Si date bonne, je continue, sinon message et
ExitSub...
Merci pour votre aide
Domi


'Importation du fichier toto.txt
Workbooks.OpenText Filename:="C:\Import\toto.txt",
Origin:=xlWindows, _
StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 2),
Array(9, _
2), Array(17, 2), Array(21, 9), Array(22, 2), Array(40, 1),
Array(53, 9), Array(54, 2), _
Array(56, 9), Array(57, 4), Array(65, 9), Array(66, 2), Array(70,
4), Array(78, 9))

2 réponses

Avatar
Jacques93
Bonjour Domi,

Par exemple :

Dim fDate As Date

fDate = FileDateTime("C:Importtoto.txt")
' fDate contient la date et l'heure de
' dernière modification
If DateSerial(Year(fDate), Month(fDate), Day(fDate)) = _
DateSerial(Year(Now), Month(Now), Day(Now)) Then
MsgBox "Le fichier est d'aujourd'hui"
Else
MsgBox "Le fichier n'est pas d'aujourd'hui"
End If

Domi a écrit :
Bonjour,
J'utilise cette macro chaque jour pour ouvrir et mettre en forme un fichier
texte extrait d'un gros système. Cela fonctionne très bien.
Je ne dois surtout pas importer un fichier qui n'a pas été crée le jour
même.
Comment sécuriser cette macro pour qu'elle vérifie que C:Importtoto.txt
est bien à la date du jour. Si date bonne, je continue, sinon message et
ExitSub...
Merci pour votre aide
Domi


'Importation du fichier toto.txt
Workbooks.OpenText Filename:="C:Importtoto.txt",
Origin:=xlWindows, _
StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 2),
Array(9, _
2), Array(17, 2), Array(21, 9), Array(22, 2), Array(40, 1),
Array(53, 9), Array(54, 2), _
Array(56, 9), Array(57, 4), Array(65, 9), Array(66, 2), Array(70,
4), Array(78, 9))






--

Cordialement,

Jacques.
Avatar
Domi
Bonjour et merci,
je viens de tester. Ca m'a l'air de le convenir parfaitement ;o)
Domi


"Jacques93" a écrit dans le message de news:

Bonjour Domi,

Par exemple :

Dim fDate As Date

fDate = FileDateTime("C:Importtoto.txt")
' fDate contient la date et l'heure de
' dernière modification
If DateSerial(Year(fDate), Month(fDate), Day(fDate)) = _
DateSerial(Year(Now), Month(Now), Day(Now)) Then
MsgBox "Le fichier est d'aujourd'hui"
Else
MsgBox "Le fichier n'est pas d'aujourd'hui"
End If

Domi a écrit :
Bonjour,
J'utilise cette macro chaque jour pour ouvrir et mettre en forme un
fichier texte extrait d'un gros système. Cela fonctionne très bien.
Je ne dois surtout pas importer un fichier qui n'a pas été crée le jour
même.
Comment sécuriser cette macro pour qu'elle vérifie que C:Importtoto.txt
est bien à la date du jour. Si date bonne, je continue, sinon message et
ExitSub...
Merci pour votre aide
Domi


'Importation du fichier toto.txt
Workbooks.OpenText Filename:="C:Importtoto.txt",
Origin:=xlWindows, _
StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0,
2), Array(9, _
2), Array(17, 2), Array(21, 9), Array(22, 2), Array(40, 1),
Array(53, 9), Array(54, 2), _
Array(56, 9), Array(57, 4), Array(65, 9), Array(66, 2), Array(70,
4), Array(78, 9))






--

Cordialement,

Jacques.