Microsoft 365 Soucis de format date

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pompaero

XLDnaute Impliqué
Bonjour le forum,

Je suis sur le point de finaliser un petit classeur avec enregistrement de certaines données quotidienne pour mon travail mais il y a un souci de format date la dedans.
Voilà, dans une feuille, il y a un tableau excel qui se rempli automatiquement ligne après ligne à chaque reseignement effectué par mes agents. Ce tableau renseigne ensuite des petits graphiques de statistiques.
Mon souci est dans la première colonne (B) les dates s'inversent entre le mois et le jour se qui fausse les stats et malgré le format indiqué dans ma macro d'enregistrement.
Je vous mon code :
VB:
 If Sht.Range("B11") <> "" Then
    Sht.ListObjects(1).ListRows.Add.Range(1, 1).Value = CDate(Range("C4").Value)    'Now()
  Else
    Sht.Range("B11") = CDate(Range("C4").Value)    'Now()
  End If
  'ajouter les informations dans le tableau
  dlt = Sht.Range("B" & Rows.Count).End(xlUp).Row
  Sht.Range("B" & dlt) = Format(Range("C4"), "dd/mm/yyyy")
  Sht.Range("B" & dlt).NumberFormat = "dd/mm/yyyy"
  Sht.Range("C" & dlt) = Range("C5")
  Sht.Range("D" & dlt) = Range("C6")
  Sht.Range("E" & dlt) = Range("C7")
  Sht.Range("F" & dlt) = Range("E4")
  Sht.Range("G" & dlt) = Range("E5")
  Sht.Range("H" & dlt) = Range("E6")
  Sht.Range("I" & dlt) = Range("E7")
  Sht.Range("J" & dlt) = Range("G4")
  Sht.Range("K" & dlt) = Range("G5")
  'préparation pour une nouvelle entrée
  Reset_KmHr
  ActiveWorkbook.Save    'enregistrement fichier
  ' Effacer les variables objet
  Set Sht = Nothing
Pourriez vous m'aider à ressoudre ce souci svp ?
Merci à vous

Cdlt
 
Bonjour,

La première de ces deux lignes suppose que vous avez une date en C4 et la transforme en texte par l'instruction FORMAT
La deuxième tente de la reformater en date !!!!!

VB:
Sht.Range("B" & dlt) = Format(Range("C4"), "dd/mm/yyyy")
  Sht.Range("B" & dlt).NumberFormat = "dd/mm/yyyy"

si C4 est réellement une date, alors :
Code:
Sht.Range("B" & dlt).Value2 = Range("C4").Value2
  Sht.Range("B" & dlt).NumberFormat = "dd/mm/yyyy"

Où .Value2 contient toujours la date sous forme de nombre quelque soit le format réel de la cellule
Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
442
Réponses
10
Affichages
478
Réponses
2
Affichages
403
Réponses
4
Affichages
453
Retour