Ну как дети, чес-слово.
Код:
	Код:
	uses
  DateUtils;
function GetDecimal(Value:string):Integer;
var
  sResult:string;
  i: Integer;
begin
  sResult:='';
  for i := 1 to Length(Value) do
    if CharInSet(Value[i],['0'..'9']) then
      sResult:=sResult+Value[i];
  Result:=StrToIntDef(sResult,0);
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  if Pos(AnsiUpperCase('дн'),AnsiUpperCase((Sender as TComboBox).Text))>0 then
    DateTimePicker1.Date:=IncDay(DateTimePicker1.Date,-1*GetDecimal((Sender as TComboBox).Text));
  if Pos(AnsiUpperCase('ме'),AnsiUpperCase((Sender as TComboBox).Text))>0 then
    DateTimePicker1.Date:=IncMonth(DateTimePicker1.Date,-1*GetDecimal((Sender as TComboBox).Text));
  if (Pos(AnsiUpperCase('го'),AnsiUpperCase((Sender as TComboBox).Text))>0) or (Pos(AnsiUpperCase('ле'),AnsiUpperCase((Sender as TComboBox).Text))>0) then
    DateTimePicker1.Date:=IncYear(DateTimePicker1.Date,-1*GetDecimal((Sender as TComboBox).Text));
end; 
то чем заполнен комбобокс
	Код:
	15 дней
2 дня
100 дней
1 месяц
3 месяца
5 месяцев
1 год
5 лет
 
вычитает из DateTimePicker'а указанный период.
Написано за 2 минуты на коленке 
