Código Delphi
[-]function tfrmrecibos.MesesANombres(D1, D2: TDate): TStrings;
var
i,ii, Mes, TotMeses,TotAnios: Integer;
AnioIni,MesIni,DiaIni,AnioFin,MesFin,DiaFin: word;
begin
DecodeDate(D1,AnioIni,MesIni,DiaIni);
D1:= EncodeDate(AnioIni , MesIni,1); DecodeDate(D2,AnioFin,MesFin,DiaFin);
D2:= EncodeDate(AnioFin,MesFin, daysInMonth(D2)); Result:= TStringList.Create;
TotMeses:= MonthsBetween(D1, D2);
TotAnios:=YearsBetween(D1,D2);
Mes:= MonthOf(D1);
for ii:= MonthOf(D1) to TotMeses + MonthOf(D1)-1 do
begin
if Mes = 12 then
Mes:= 1
else
Inc(Mes);
Result.Add(LongMonthNames[Mes]+' '+IntTostr(i));
end;
end;
voy a tratar de sacar los años y demas datos.