Format date yymmdd [Résolu]

Signaler
Messages postés
4
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
27 novembre 2008
-
Messages postés
577
Date d'inscription
vendredi 26 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2010
-
Bonjour,

Je suis en train de créer une macro me permettant de récupérer des informations au jour le jour dans divers classeurs pour centraliser ce qui m'interesse dans un autre.
L'un des classeurs dans lequel je souhaite prendre des données s'appelle daily_drill_yymmdd.xls
Je souhaite que ce classeur s'ouvre automatiquement en fonction d'une date que je rentre dans une inputbox.
Par exemple je rentre la date d'aujourd'hui dans ce format 07/11/08 que j'obtiens en definissant ma variable en Date

Dim xlBook as New Excel.Workbook
Dim JDD as Date

JD = Date
'Je me laisse la possibilité de modifier la date au cas où...
JDD = InputBox("Day to update?", vbOKCancel, JD)
'Ensuite je dois ouvrir le fichier avec le format yymmdd.
jour = Day(JDD)
mois = Month(JDD)
annee = year(JDD)
Set xlBook = xlApp.Workbooks.Open("daily_drill_"annee & mois & jour & ".xls")
Là j'ai un problème si le jour ou l'année n'est pas codé sur 2 digits.
Pour l'année pas de problème, je peux mettre un 0 après le dernier _ , mais pour le jour...

Merci d'avance pour vos réponses, jusque là j'ai reussi à trouver tout ce que je cherchais, mais la je bloque.

5 réponses

Messages postés
577
Date d'inscription
vendredi 26 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2010
4
La solution proposée par jmmarques est la bonne, elle règle non seulement ton problème d'années et de jours, mais également celui des mois de janvier à septembre.

Pour la mettre en pratique, remplace simplement :

jour = Day(JDD)
mois = Month(JDD)
annee = year(JDD)
Set xlBook = xlApp.Workbooks.Open("daily_drill_"annee & mois & jour & ".xls")

par :

strDate = format(JDD,"yymmdd")
Set xlBook = xlApp.Workbooks.Open("daily_drill_" & strDate & ".xls")

Cordialement
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
23
MsgBox Format(Date, "yymmdd")
Messages postés
577
Date d'inscription
vendredi 26 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2010
4
Bonjour
Dans ton instruction Set xlBook ... tu peux aussi remplacer jour par jour Format(Jour,"00")

( Et comme moi j'ai été poli et je t'ai dit bonjour, clique sur le bouton Réponse acceptée à gauche de MON
message  )

Cordialement
Messages postés
4
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
27 novembre 2008

Bonjour et merci pour vos réponses ultra-rapide,

Concernant le premier message, la date s'affiche effectivement dans le bon format dans mon input box, mais lorsque je refais appelle a la variable JDD, le format n'est pas conservé...
La seule solution que j'ai trouvé est de définir JDD en currency.
Je ne valide pas les solutions au cas ou vous trouviez quelquechose qui colle vraiment, mais pour l'instant ça fonctionne.

Encore merci
Messages postés
577
Date d'inscription
vendredi 26 septembre 2008
Statut
Membre
Dernière intervention
20 novembre 2010
4
Salut,


>> Je ne valide pas les solutions. Tu as raison Jeremy014, c'est le règlement. Tant pis pour moi.

Dura Lex, Sed Lex

Bon week