Bonsoir à tous
Sous Delphi 7, j'essaye de calculer l'écart entre 2 dates d'une même (mais en format Date - type (jour et moi seulement, sans l'année) ex :18 avril).
En clair, je voudrais par exemple que la différence entre les dates : 28 avril - 18 avril (renvoie comme résultat 10)
Pour effectuer le calcul de l'écart, j'utilise un DateTimePicker pour la date du jour et la différence doit se faire depuis une date que je récupère dans un stringgrid et stocké dans des TEdit et la fonction DaysBetween
Dans mon code ci-après, les dates sont bien récupérées mais le calcul ne s'effectue pas.
Le compilateur ne renvoie aucune erreur mais lorsque je clique sur le bouton dans mon programme, ça plante et l'erreur "n'est pas une date correcte" s'affiche.
Le problème se situe dans les TEdit : DateFiche1 et EditJour
Sans doute que l’interprétation de la fonction DaysBeetween doit poser problème sans la variable "Annee" et j'aimerai savoir comment contourner cela.
A vous lire pour votre aide
Merci
Cordialement
Beauserge
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 procedure TForm1.Button1Click(Sender: TObject); var DateJourBase: String; D1: TDateTime; E1: Extended; begin DateTimePicker3.Date:=now; // date du jour EditJour.text:=FormatDateTime('dd mmmm', DateTimePicker3.Date); // formatage date (ex : 18 avril) DateJourBase:=EditJour.text; // récupération date dans stringgrid DateFiche1.text:=StringGrid1.Cells[0,9]; D1:=StrToDate(DateFiche1.text); E1 := DaysBetween(StrToDate(DateJourBase),D1); // affichage des écarts dans les Edits Ecarts Fiches EcartF1.Text:=FloatToStr(E1); end;
Partager