Mil gracias Marcos!!!
Igual, ahora que vi con más calma la (mal redactada) pregunta, creo que la solución iba un poco más allá:
Código Delphi
[-]
uses DateUtils;
{$R *.dfm}
function MesesTranscurridos(F1, F2: TDate): Integer;
begin
F1 := StartOfTheMonth(F1);
F2 := EndOfTheMonth(F2) + 1;
Result := MonthsBetween(F1, F2);
end;
procedure TForm2.Button1Click(Sender: TObject);
var
Year: Word;
F1, F2: TDate;
begin
Memo1.Lines.Clear;
for Year := YearOf(DateTimePicker1.Date) to YearOf(DateTimePicker2.Date) do
begin
if Year = YearOf(DateTimePicker1.Date) then
F1 := DateTimePicker1.Date
else
F1 := EncodeDate(Year, 1, 1);
if Year = YearOf(DateTimePicker2.Date) then
F2 := DateTimePicker2.Date
else
F2 := EncodeDate(Year, 12, 31);
Memo1.Lines.Add(Format('%s - %s: %d meses', [
FormatDateTime('mmmm ''de'' yyyy', F1)
, FormatDateTime('mmmm ''de'' yyyy', F2)
, MesesTranscurridos(F1, F2)
]));
end;
end;
El resultado es este:
Un saludo.
pd. Me pregunto donde está Tonatiuh? <---- favor no responder es una pregunta interna.