La Web del Programador: Comunidad de Programadores
 
    Pregunta:  61917 - SACAR EN UN FORMULARIO LA DIFERENCIA ENTRE DOS FECHAS
Autor:  MATIAS ALVAREZ
hola tengo un formulario con tres edits los dos primeros tienen dos fechas diferentes megustaria saber como puedo hacer para que me salga la diferencia en dias por el tercero.

muchas gracias por adelantado.

  Respuesta:  Luis Felipe García Gutiérrez
Probá con ésto:

DaysBetween
Function Gives the whole number of days between 2 dates DateUtils unit

function DaysBetween ( const ToDate, FromDate : TDateTime ) : Integer;


Description
The DaysBetween function subtracts the FromDate from the ToDate, returning the number whole days difference.

The time value of each date is taken account of - only whole 24 hour chunks are counted as whole days.

Notes
A whole day does not have to start at 00:00:00.


Related commands
DaysInAMonth Gives the number of days in a month
DaysInAYear Gives the number of days in a year
DaySpan Gives the fractional number of days between 2 dates


Example code : Find the days difference between two date+time values.
var
fromdate, toDate : TDateTime;

begin
// Set up our date variables
fromDate := EncodeDateTime(2000, 02, 26, 10, 0, 0, 0);
toDate := EncodeDateTime(2000, 02, 29, 9, 0, 0, 0);

// Display these dates and the days between them
ShowMessage('From date = '+DateTimeToStr(fromDate));
ShowMessage('To date = '+DateTimeToStr(toDate));
ShowMessage('Whole days difference = '+
IntToStr(DaysBetween(toDate, fromDate))+' days');
end;

Show full unit code
From date = 26/02/2000 10:00:00
To date = 29/02/2000 09:00:00
Whole days difference = 2 days