Meu Caro, Você pode fazer assim: Para testar esse exemplo coloque dois componentes TDateTimePicker no form e um botão. Nomeio os DateTimePickers como DtInicial e DtFinal No Onclick do botão coloque o seguinte código: procedure TForm1.Button1Click(Sender: TObject); var i, dias, diasUteis, Sabados, Domingos : Integer; data : TDate; diaSemana :word; begin dias := DaysBetween(dtInicial.Date,dtFinal.Date); diasUteis := 0; Sabados := 0; Domingos := 0; data := dtInicial.Date; { Para considerar inclusive a data atual, incremente a data no final do bloco begin..end, para não considerar incremente a data no início do bloco.} for i := 1 to dias do begin data := data + 1; {Incrementando a data aqui, não se considera a data atual na contagem} diaSemana := DayOfWeek(data);
if diaSemana in [2..6] then Inc(diasUteis); if diaSemana = 7 then Inc(Sabados); if diaSemana = 1 then Inc(Domingos); //data := data + 1; {Incrementado aqui, considera-se a data atual na contagem} end; Showmessage('Entre '+ DateToStr(dtInicial.Date) + ' e ' + DateToStr(dtFinal.Date) + ' existe(m) ' + IntToStr(diasUteis) + ' dias úteis, '+ IntToStr(Sabados) + ' sábado(s), '+ IntToStr(Domingos)+' domingo(s).'); end; Já para saber se o dia é feriado ou não você precisará ter uma tabela de feriados, onde serão cadastrados os feriados do ano. Então ao incrementar cada data você verifica nessa tabela se trata-se de um feriado ou não e armazena essa informação numa variável, da mesma forma que conta os sábados e domingos. Grande Abraço, Alessandro Alves _____ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de galvao_em Enviada em: quarta-feira, 21 de setembro de 2005 12:01 Para: delphi-br@yahoogrupos.com.br Assunto: [delphi-br] Dias Uteeis entre datas Olá pessoal preciso de ajuda para resolver um probleminha, preciso digitar uma data inicial e uma data final em meu sistema, e o mesmo precisa me retornar quantos dias uteis e quantos domingos/feriados existe entre as duas datas, alguém poderia me ajudar? desde já obrigado _______________________________________________________ Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos emoticons e muito mais. Instale agora! www.yahoo.com.br/messenger/ -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: <http://br.i1.yimg.com/br.yimg.com/i/br/ads6/160905_pop_celsamsung_camdig.gi f> _____ Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo! <http://br.yahoo.com/info/utos.html> . [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html