MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


4 participantes

    Linha do tempo

    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    Linha do tempo Empty Linha do tempo

    Mensagem  paulodaeira 5/7/2021, 14:58

    Olá a todos

    Venho mais uma vez recorrer à Vossa ajuda

    Tenho uma tabela com os seguintes dados:

    Nome Colaborador: Jorge Manuel

    Tarefa_dia  | Tarefa_HoraInicio | Tarefa_HoraFim
    05/07/2021|        09:00          |        11:00
    05/07/2021|        13:00          |        15:00
    05/07/2021|        14:35          |        16:43

    Existe possibilidade de num relatório aparecer com o seguinte aspecto?

    Linha do tempo Linha_10

    Obrigado desde já pelo tempo dispensado
    Paulo
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    Linha do tempo Empty Re: Linha do tempo

    Mensagem  Alexandre Neves 11/7/2021, 20:16

    Boa noite
    Existe


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    Linha do tempo Empty Re: Linha do tempo

    Mensagem  paulodaeira 12/7/2021, 11:31

    Ok Obrigado

    Tendo em conta que não sei como fazer, pode ajudar-me?

    Cumprimentos
    Paulo
    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    Linha do tempo Empty Re: Linha do tempo

    Mensagem  paulodaeira 27/7/2021, 14:23

    Olá a todos

    Alguém tem algum exemplo ou me pode ajudar a solucionar esta dificuldade

    Grato pela atenção
    Paulo
    rubenscouto
    rubenscouto
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 680
    Registrado : 02/10/2011

    Linha do tempo Empty Re: Linha do tempo

    Mensagem  rubenscouto 10/8/2021, 02:15

    Envia parte do bd.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    Linha do tempo Empty Re: Linha do tempo

    Mensagem  Avelino Sampaio 10/8/2021, 15:43

    Olá!

    A principio imaginei que você pudesse construir o relatório, utilizando como base uma consulta de referência cruzada mas acho que vai ficar mais simples se utilizar um pouquinho de programação direto no relatório.

    - A ideia aqui é se utilizar de um campo da tabela, para utilizar como"barra" no relatório. Você então vai alterar, via programação, a posição desse campo bem como o seu comprimento, de acordo com as horas de início e fim.
    - Utilize o evento"ao formatar", da seção detalhes do relatório, para esta pequena programação.
    - Ajuste o campo barra com o comprimento de 24cm. Cada 1cm de barra corresponderá a 1 hora.
    - O valor do centímetro no VBA corresponde a 566.929 twips. 1hora terá esse comprimento de 566.929
    - A hora no VBA também tem número correspondente. Basta usar a função Cdbl() para converter a hora em valor número correspondente.
    - se dividirmos o 566.929 por Cdbl(#01:00#) :::> teremos o valor 13606.296
    - Para definir a largura da barra, a seguinte fórmula é aplicada: Int(CDbl(HoraFinal - HoraInicial) * 13606.296). A função Int() retorna valor inteiro.
    - supondo hora inicial às 10:00 e hora final às 13:00 :::> Int(CDbl(#13:00# - #10:00#) * 13606.296) ::> 1700 twips
    - (1700 twips / 566.929) corresponde a 3cm de largura de barra. Lembrando que cada centimentro da barra corresponde a 1hora.
    - Após definido a largura da barra, chegou o momento de definir a posição inicial da barra. Esta eu vou deixar você pensar um pouco na solução.

    Private Sub Detalhe_Format(Cancel As Integer, FormatCount As Integer)
    Me!Barra.Width = Int(CDbl(Me!NomeCampoHoraFinal - Me!NomeCampoHoraInicial) * 13606.296)
    Me!Barra.Left = ???
    End Sub


    Aguardamos sua evolução no projeto.

    Quem quiser se desafiar em montar um exemplo para o Paulo, baseado neste meu cálculo, esteja a vontade.






    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.

    Conteúdo patrocinado


    Linha do tempo Empty Re: Linha do tempo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 23/11/2024, 00:50