Reconnaissance d'une date dans un nom de fichier

Résolu
faucon69 Messages postés 2 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 mars 2008 - 18 mars 2008 à 11:37
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 18 mars 2008 à 12:08
Bonjour,

je développe actuellement une petite application pour le boulot

et j'aimerais avoir votre aide.

Cette application doit traiter des fichiers dont le nom a la syntaxe

suivante : année_mois_jour_heure_minute.xls (par exemple :

2008_03_14_15_02.xls).

J'arrive sans problème à supprimer le ".xls". Mais j'aimerais que le

programme soit capable de reconnaitre la date et l'heure contenues

dans le nom du fichier. Quelqu'un aurait-il une idée de la façon dont

je pourrais m'y prendre ?

Merci de votre aide.

GJ

4 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
18 mars 2008 à 11:47
Salut,
Si c'est toujours le meme forma rien de plus simple.
Adapte ceci
Private Sub Form_Load()
MsgBox GetFileDate("2008_03_14_15_02.xls")
End Sub<hr />

Public Function GetFileDate(NomFichier As String) As Date
Dim Crt As String
Dim DParts() As String

   Crt = Mid(NomFichier, 1, InStr(1, NomFichier, ".") - 1)
   DParts = Split(Crt, "_")
   
   Crt = DateSerial(DParts(0), DParts(1), DParts(2)) & " " & TimeSerial(DParts(3), DParts(4), 0)
   GetFileDate = CDate(Crt)
End Function , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
18 mars 2008 à 11:49
Salut
Tu parles de Excel.
C'est donc du VBA, pas du vb.Net --> Modif de la catégorie de la question

Pour découper la chaine du nom du fichier, utilise l'instruction Mid, exemple : Année = Mid(NomFichier, 1, 4)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
18 mars 2008 à 12:08
Ou encore :

Dim titi As String, pos As Integer, tata As String
 titi = "2008_03_14_15_02.xls)"
 pos = InStr(titi, ".")
 Mid(titi, pos - 3, 1) = ":"
 Mid(titi, pos - 6, 1) = " "
 tata = Replace(Left(titi, pos - 1), "_", "/")
 MsgBox tata
3
faucon69 Messages postés 2 Date d'inscription mardi 18 mars 2008 Statut Membre Dernière intervention 18 mars 2008
18 mars 2008 à 11:56
OK merci pour vos réponses rapides.
Pour la catégorie, je suis désolé mais j'ai
fait ça un peu vite.

Encore merci pour la rapidité de vos réponses.

a+

GJ
0
Rejoignez-nous