Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Contagem De Datas Apenas Dias Uteis


brunocasado

Pergunta

gente presciso faze um campo assim q pega a data atual e some com mais 5 tipo hj é 26 ele coloque 31

só q é assim ele só pode conta os dias uteis intao quando chegace no dia 28 q é uma sexta ele continuaria a contar somente apartir do dia 31 q é uma segunda intao resutado final seria 3/09/2007

tem como isso acontecer?

Se isso não tiver como, como poderei fazer com que assim que o relatorio for criado, ele conte 5 dias apos a data de criaçao e ponha no campo não acoplado? que expressao que terei que usar?

Editado por brunocasado
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Se eu não me engano eu postei algo sobre isso a algum tempo atrás mais não tenho mais o exemplo, mais lembro que tem que fazer uma tabela para guardar os feriados semelhante ao que se usa em controle calendário, daí basta fazer as comparações entre os dias que estão na tabela e os domingos pra se ter o resultado... o link a seguir tem um controle calendário dá uma olhada tenho certeza que você conseguirá tirar algumas ideias de lá.

Controle calendário

(fonte: JR´s FAQ)

Link para o comentário
Compartilhar em outros sites

  • 0

ok cara vou dar uma olhada vlw

mrmalj como faco para ultilizar esse funcao:

Function DiaUtil(InformeData) As Integer
    DiaUtil = False
    
    ' Procura por Sábado ou Domingo.
    If WeekDay(InformeData) = 1 Or WeekDay(InformeData) = 7 Then
        DiaUtil = False
        ' Procura por Feriados cadastrados na tabela tabFeriados.
    ElseIf IsNull(DLookup("Feriado", "tabFeriados", "[Feriado] = #" _
        & InformeData & "#")) Then
        DiaUtil = True
    End If
    
End Function

isso eu ponho num modulo?? num to sabeno ultilizar....

Link para o comentário
Compartilhar em outros sites

  • 0

Use a função abaixo

Coloque em um modulo a função abaixo

Veja que somente considerei 2 feriados 12/10 e 1/5

Voce precisa para outros feriados.

Function DiaUtil(Verdata As Date) As Boolean

DiaUtil = True

If Weekday(Verdata) = 1 Or Weekday(Verdata) = 7 Then DiaUtil = False

'verifica 12 de outubro

If Day(Verdata) = 12 And Month(Verdata) = 10 Then DiaUtil = False

'verifica 1 de maio

If Day(Verdata) = 1 And Month(Verdata) = 5 Then DiaUtil = False

'voce precisa verificar feriado por feriado tal como acima

End Function

'Detalhes: a função usada acima weekday retorna 1 se for domingo e 7 se for sabado

no programa voce passa a data como parametro

if Diautil(dataX) = true then

else

endif

se for em uma consulta ou relatorio voce pode usar o iif()

=iif(Diautil([Campodata]=true;"Dia Útil";"Dia não Útil")

ou no where do sql ou no criterio de filtro da consulta

Diautil([campodata]) = true

Boa sorte

Lu@u

Link para o comentário
Compartilhar em outros sites

  • 0

já que voce que usar a função em um campo fazendo uma dia util a partir de hoje + 5

faça assim:

=iif(diautil(Date()+5)=true;date()+5;iif(diautil(Date()+6)=true;date()+6;iif(diautil(date()+7)=true;date()+7;date()+8)))

8 é o limite já que entendo que sera dificil ter mais de 3 dias não uteis seguidos

seria Sab Dom e Seg se segunda é feriado, ou Sex, Sab e Dom se sexta é feriado

Espero ter ajudado !

Abcs,

Lu@u

Link para o comentário
Compartilhar em outros sites

  • 0

olha deu certo.... porem ele num para de conta na sexta e continua na segunda........ porem c o orcamento daki 5 dias cai num sabado ou domingo ele vai criar na segunda.... ateh ai tdo bem... pois sempre evitara de cair em um fds...

mas c tiver um jeito dele conta só os dias uteis é melhor...

pode ateh c dar como resolvido mais c tiver uma solucao melhor..

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...