MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Formato de Horas Negativas

    Compartilhe

    BITSILVA
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 30/08/2010

    [Resolvido]Formato de Horas Negativas

    Mensagem  BITSILVA em Qua 08 Jun 2016, 20:27

    Amigos do fórum,
    Peguei a seguinte função que faz o cálculo entre intervalos de horas (Saída-Entrada) trazendo horas negativas.

    Public Function CalculaHoras(Carga As Date, Total As Date) As String
       Dim intHoras As Integer
       Dim intMinutos As Integer
       intMinutos = DateDiff("n", Total, Carga)
       intHoras = intMinutos \ 60
       intMinutos = intMinutos Mod 60
       CalculaHoras = CStr(intHoras) & "Horas" & CStr(intMinutos) & "minutos"
    End Function

    Ele me traz o formato de horas negativos da seguinte maneira: " - 1 Horas - 30 minutos"

    Na consulta adiconei um campo da seguinte forma:

    Saldo Horas: Format(CalculaHoras([Total];[Carga]);'Hora abreviada')

    Mesmo assim não deu certo! Quero a formatação de horas apareça da seguinte maneira: "-01:30" para horas negativas, pois para horas positivas aparece normalmente.

    Grato pela atenção de todos.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2314
    Registrado : 14/08/2013

    Re: [Resolvido]Formato de Horas Negativas

    Mensagem  FabioPaes em Qua 08 Jun 2016, 20:50

    Provavelmente a chamada da função esta com os campos invertidos, ou ate mesmo na Função...

    Ex:
    HEntrada= 08:00h
    HSaida: 10:00h


    Se vc calcular assim: HEntrada - Hsaida = -02:00h

    Agora se vc Fizer assim: HSaida - HEntrada = 02:00h


    Então Inverta os campos...

    =CalculaHoras([HSaida];[HEntrada])
    <=='Essa é a forma correta de chamar sua Função!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    BITSILVA
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 30/08/2010

    Re: Formato de Horas Negativas

    Mensagem  BITSILVA em Qui 09 Jun 2016, 16:52

    Olá Fábio,
    Agradeço pela atenção!

    Mas acontece que a Função traz o seguinte resultados para horas negativas:

    - 1 horas -30 minutos.

    Quero saber onde posso mudar para que me traga o seguinte formato:

    - 01:30

    Como resolver isso?

    A sua sugestão foi de grande valia mesmo assim não me trouxe o formato pretendido.
    Anexos
    PontoDigital.accdb.zip
    Arquivo de Exemplo Horas negativas.....quero formato
    Você não tem permissão para fazer download dos arquivos anexados.
    (35 Kb) Baixado 5 vez(es)

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2314
    Registrado : 14/08/2013

    Re: [Resolvido]Formato de Horas Negativas

    Mensagem  FabioPaes em Qui 09 Jun 2016, 17:21

    Bom se quer apenas remover o - dos Minutos mude esta linha:


    CalculaHoras = CStr(intHoras) & ":" & Replace(CStr(intMinutos), "-", "")

    Assim utilizamos o Replace, para remover o sinal de - dos Minutos.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    BITSILVA
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 30/08/2010

    Re: Formato de Horas Negativas

    Mensagem  BITSILVA em Qui 09 Jun 2016, 19:19

    Olá Fábio,

    Estamos quase lá....ao inserir a função:

    Public Function CalculaHoras(Carga As Date, Total As Date) As String
    Dim intHoras As Integer
    Dim intMinutos As Integer
    intMinutos = DateDiff("n", Carga, Total)
    intHoras = intMinutos \ 60
    intMinutos = intMinutos Mod 60
    CalculaHoras = CStr(intHoras) & ":" & Replace(CStr(intMinutos), "-", "")
    End Function

    Tentei inserir mais uma coluna na consulta com a seguinte expressão: Saldo: format(datediff('nn';Carga;Concluido);'hh:mm')

    Aparece os valores somente positivos no formato 01:30 e não aparece valores negativos conforme gostaria "-01:30".

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2314
    Registrado : 14/08/2013

    Re: [Resolvido]Formato de Horas Negativas

    Mensagem  FabioPaes em Qui 09 Jun 2016, 20:16

    Meu amigo, a mudança que fizemos foi na Função CalculaHoras() da forma como esta fazendo não esta usando a função!!!...
    Saldo: format(datediff('nn';Carga;Concluido);'hh:mm')


    Se vai ter uma função, use-a pra calcular a diferença!

    Assim: Saldo: CalculaHoras(Carga;Concluido)


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Avelino Sampaio
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3348
    Registrado : 04/04/2010

    Re: [Resolvido]Formato de Horas Negativas

    Mensagem  Avelino Sampaio em Qui 09 Jun 2016, 20:23

    Olá!

    Veja se atende:

    [Você precisa estar registrado e conectado para ver este link.]

    Aguardamos


    .................................................................................
    ============ Quer aprender Access em alta velocidade ? ============

    || [Você precisa estar registrado e conectado para ver esta imagem.] Acesse o site UsandoAccess.com.br e veja um ótimo kit de ensino que tenho para você.

    ===========================================================

      Data/hora atual: Ter 06 Dez 2016, 05:41