Conversion texte en date
Résolu/Fermé
Akatsucki
Messages postés
90
Date d'inscription
jeudi 1 octobre 2020
Statut
Membre
Dernière intervention
16 décembre 2021
-
29 oct. 2021 à 17:05
yg_be Messages postés 23476 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 février 2025 - 30 oct. 2021 à 09:28
yg_be Messages postés 23476 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 février 2025 - 30 oct. 2021 à 09:28
A voir également:
- Conversion texte en date
- Transcription audio en texte word gratuit - Guide
- Excel cellule couleur si condition texte - Guide
- Mettre un texte en majuscule - Guide
- Transcription texte en audio - Guide
- Texte en gras - Guide
2 réponses
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
Ambassadeur
1 568
29 oct. 2021 à 17:08
29 oct. 2021 à 17:08
bonjour,
je pense qu'il faut modifier ton code VBA.
je pense qu'il faut modifier ton code VBA.
Akatsucki
Messages postés
90
Date d'inscription
jeudi 1 octobre 2020
Statut
Membre
Dernière intervention
16 décembre 2021
Modifié le 29 oct. 2021 à 20:42
Modifié le 29 oct. 2021 à 20:42
Après que quelqu'un m'est aidé sur comment convertir mon texte en date le code ci dessous fonctionne correctement !!! maintenant si vous avez des idées d'amélioration niveau rapidité je suis preneur merci !! ;)
'Declaration des variables Dim DateLimite As Date: DateLimite = DateSerial(Year(Date), Month(Date), Day(Date) - 30) Dim NomDossier As String: NomDossier = "C:\archive_ceinture\" Dim DateJour As String Dim NomFichier As Variant, DateFichier As Variant Application.DisplayAlerts = False 'Affectations des variables jour = Day(Date) Select Case Len(jour) Case 1 jour = "0" & jour End Select Mois = Month(Date) Select Case Len(Mois) Case 1 Mois = "0" & Mois End Select DateJour = jour & Mois & Year(Date) NomFichier = "STOCK CEINTURE" & DateJour & ".xlsm" 'on sauvegarde le fichier de backup ActiveWorkbook.SaveCopyAs NomDossier & NomFichier 'Suppression des fichiers qui ont plus de 30 jours de sauvegarde NomFichier = Dir(NomDossier & "*.xlsm") Do While Len(NomFichier) > 0 DateFichier = Mid(NomFichier, 15, 8) DateFichier = DateSerial(Right(DateFichier, 4), Mid(DateFichier, 3, 2), Left(DateFichier, 2)) If IsDate(CDate(DateFichier)) Then If CDate(DateFichier) < DateLimite Then Kill NomDossier & NomFichier End If NomFichier = Dir() Loop
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
1 568
29 oct. 2021 à 21:07
29 oct. 2021 à 21:07
moi j'écrirais plutôt:
Dim DateLimite As Date Dim NomDossier As String: NomDossier = "C:\archive_ceinture\" Dim DateJour As String, cejour as date, jour as string, Mois as string Dim NomFichier As Variant, sDateFichier As string, dDateFichier as date Application.DisplayAlerts = False 'Affectations des variables cejour=date() DateLimite = cejour-30 jour = Day(cejour) if Len(jour) = 1 then jour = "0" & jour End if Mois = Month(cejour) if Len(Mois) = 1 then Mois = "0" & Mois End if DateJour = jour & Mois & Year(cejour) NomFichier = "STOCK CEINTURE" & DateJour & ".xlsm" 'on sauvegarde le fichier de backup ActiveWorkbook.SaveCopyAs NomDossier & NomFichier 'Suppression des fichiers qui ont plus de 30 jours de sauvegarde NomFichier = Dir(NomDossier & "*.xlsm") Do While Len(NomFichier) > 0 sDateFichier = Mid(NomFichier, 15, 8) dDateFichier = DateSerial(Right(sDateFichier, 4), Mid(sDateFichier, 3, 2), Left(sDateFichier, 2)) If dDateFichier) < DateLimite Then Kill NomDossier & NomFichier End If NomFichier = Dir() Loop
Akatsucki
Messages postés
90
Date d'inscription
jeudi 1 octobre 2020
Statut
Membre
Dernière intervention
16 décembre 2021
>
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
29 oct. 2021 à 23:24
29 oct. 2021 à 23:24
Ça change quelque chose à mon code ?
yg_be
Messages postés
23476
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 février 2025
1 568
>
Akatsucki
Messages postés
90
Date d'inscription
jeudi 1 octobre 2020
Statut
Membre
Dernière intervention
16 décembre 2021
30 oct. 2021 à 09:28
30 oct. 2021 à 09:28
Uniquement si tu es preneur de suggestions.
29 oct. 2021 à 18:07
Je pensais au pire rajouter des - entre le jour,le mois et l’année pour que mon fichier ce nomme toto09-01-2021.xlsm puis je récupère uniquement la date 09-01-2021 ou je peux remplacer les "-" par "/" pour obtenir 09/01/2021 et ainsi mon format sera de type texte mais je sais pas si je pourrais le comparer à la date limite de -30jours sinon suppression ??
29 oct. 2021 à 18:22
Tu peux facilement comparer 20210109 à 20210929, non?
Sinon, tu peux utiliser la fonction dateserial() pour créer une date à partir des nombres de l'année, du mois et du jour.
Comme tu ne montres pas ton code, difficile d'être plus précis.
Si jamais tu montres ton code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
29 oct. 2021 à 18:43
Modifié le 29 oct. 2021 à 20:12