Difference entre deux date [Résolu]

Messages postés
46
Date d'inscription
lundi 4 avril 2005
Dernière intervention
25 septembre 2007
- - Dernière réponse : idsidids
Messages postés
1
Date d'inscription
mercredi 7 avril 2010
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
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
163
Date d'inscription
dimanche 20 octobre 2002
Dernière intervention
31 juillet 2008
3
Merci
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

Merci exyacc 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de exyacc
Messages postés
759
Date d'inscription
vendredi 21 mars 2003
Dernière intervention
1 octobre 2009
3
Merci
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 ]

Merci cs_Kenavo 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Kenavo
Messages postés
1
Date d'inscription
mercredi 7 avril 2010
Dernière intervention
22 juin 2011
0
Merci
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.
Commenter la réponse de idsidids

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.