Difference entre deux date

Résolu
hajeur_abd Messages postés 46 Date d'inscription lundi 4 avril 2005 Statut Membre Dernière intervention 25 septembre 2007 - 1 juil. 2005 à 14:38
idsidids Messages postés 1 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 22 juin 2011 - 22 juin 2011 à 15:10
Salut,
ya t'il une fonction qui nous donne le nombre de jours entre 2 date.
Merci d'avance pour l'aide.

Hejer

3 réponses

exyacc Messages postés 163 Date d'inscription dimanche 20 octobre 2002 Statut Membre Dernière intervention 31 juillet 2008
1 juil. 2005 à 14:47
DaysBetween



avec uses DateUtils



AIDE DE DELPHI:



Renvoie le nombre de jours entiers séparant deux valeurs TDateTime spécifiées.

function DaysBetween(const ANow, AThen: TDateTime): Integer;

Description

Appelez DaysBetween pour obtenir la différence, en jours, entre deux valeurs TDateTime.

DaysBetween ne compte que les jours entièrement écoulés. Ainsi,
DaysBetween renvoie 0 pour la différence entre le
31 décembre 1999 23h59 et le 1er janvier 2000 23h58 car
il manque une minute pour que la différence soit d'un jour entier.





voili voila

exyacc
3
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
1 juil. 2005 à 17:22
Salut,



Si tu as une "ancienne" version de Delphi (sans DateUtils), tu peux ecrire :



Resu := Trunc(Date2-Date1); qui doit doner le même resultat que DaysBetween



Si tu veux compter le nombre de jours entiers



Resu := Int(Date2) - Int(Date1) - 1



etc ...



TDateTime est un réel dont la pertie entière reprensente le nombre de
jours depuis le 1er janvier 1900 (je crois), à toi de jouer avec ça !



Ken@vo

<hr size="2" width="100%">Code, Code, Codec !

[%3C/body ]
3
idsidids Messages postés 1 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 22 juin 2011
22 juin 2011 à 15:10
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,DateUtils;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }

end;

var
Form1: TForm1;
function nbr_jour(d1,d2:tdate):longint;
implementation
{$R *.dfm}
function nbr_jour(d1,d2:tdate):longint;
var
aa1,mm1,jj1,aa2,mm2,jj2:word;
begin
decodedate(d1,aa1,mm1,jj1);
decodedate(d2,aa2,mm2,jj2);
if jj1=31 then
jj1:=30;
if jj2=31 then
jj2:=30;
if (mm2=2) then
if jj2>=28 then
jj2:=30;
result:=(aa2*360+mm2*30+jj2)-(aa1*360+mm1*30+jj1)+1;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
d1,d2:tdate;
nbr_jours:longint;
begin
d1:=strtodate(edit1.Text);
d2:=strtodate(edit2.Text);
nbr_jours:=nbr_jour(d1,d2);
edit3.Text:=inttostr(nbr_jours);
end;

end.
0
Rejoignez-nous