Mas se vc quiser que comece na segunda esta na mão tb.

var
   Ano     : Word;
   vSem,
   vDia,
   vSemana : Integer;
   vData   : TDate;

begin

   Ano     := 2007;
   vSemana := 14;
   vDia    := 4;
   vData   := EncodeDate(Ano, 1, 1);
   //while DayOfWeek(vData) > 1 do
   while DayOfWeek(vData) > 2 do
      vData := vData - 1;
   vSem  := 1;
   vData := vData + 7;
   while vSem < vSemana do
   begin
      Inc(vSem);
      vData := vData + 7;
   end;
   vData := vData - 1;
   //while DayOfWeek(vData) > vDia do
   while DayOfWeek(vData) > vDia + 1 do
      vData := vData - 1;
   ShowMessage(DateToStr(vData));

end;

Eduardo

Eduardo Castro Alves escreveu:
>
> Ta na mão.
>
> var
> Ano : Word;
> vSem,
> vDia,
> vSemana : Integer;
> vData : TDate;
>
> begin
>
> Ano := 2007;
> vSemana := 14;
> vDia := 5;
> // A semana começa no domingo e não na segunda por isso o dia é 5 e não 4
> // Mas se você quiser contar a partir da segunda é só ajusta para o seu
> gosto
> vData := EncodeDate(Ano, 1, 1);
> while DayOfWeek(vData) > 1 do
> vData := vData - 1;
> vSem := 1;
> vData := vData + 7;
> while vSem < vSemana do
> begin
> Inc(vSem);
> vData := vData + 7;
> end;
> vData := vData - 1;
> while DayOfWeek(vData) > vDia do
> vData := vData - 1;
> ShowMessage(DateToStr(vData));
>
> end;
>
> Eduardo
> Natanael Rodrigues escreveu:
> >
> > Existe componente ou função que retorne de acordo com o número da
> > semana do ano e o númedo do dia semana(Seg-Do o dia do calendário?
> >
> > Por exemplo:
> >
> > A Semana numero: 14
> > O dia da Semana: 4
> >
> > retornaria 05/04/2007
> >
> > Grato.
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
>
>
> _______________________________________________________
> Yahoo! Mail - Sempre a melhor opção para você!
> Experimente já e veja as novidades.
> http://br.yahoo.com/mailbeta/tudonovo/ 
> <http://br.yahoo.com/mailbeta/tudonovo/>
>
>  


                
_______________________________________________________ 
Yahoo! Mail - Sempre a melhor opção para você! 
Experimente já e veja as novidades. 
http://br.yahoo.com/mailbeta/tudonovo/
 

Responder a