Microsoft 365 Soucis de format date

pompaero

XLDnaute Occasionnel
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
 

Hasco

XLDnaute Barbatruc
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
 

Statistiques des forums

Discussions
292 782
Messages
1 926 181
Membres
182 940
dernier inscrit
elharf