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

    [Resolvido]Quantas semanas tem entre duas datas citadas?

    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 9/2/2014, 19:36

    Boa tarde, amigos.
    Meu Formulario tem dois campos com data. [DataConsultaPreNatal] e [DUM] (Essa última é Data da Última Menstruação). Preciso que o Access calcule quantas semanas e quantos dias há entre essas datas, para calcular a Idade Gestacional. E o resultado irá para uma Caixa de texto Desacoplada chamada [IG_DUM], no seguinte formato: Ex: 12 semanas e 3 dias, ou 25 semanas, etc. Esse formulário é baseado numa Tabela.
    Se fosse possivel seria bom que, se faltar a DUM, aparecesse um sinal de interrogação (?) como resultado.
    Como faço isso?
    Usei a expressão: =DifData("w";[DataConsultaPreNatal];[DUM]), na Fonte do Controle da Caixa de Texto, mas dá êrro (#Nome). Tentei colocar vírgulas entre os parâmetros mas não aceita. Alem disso, acho que essa função não me dá os dias que sobram das semanas...
    Alguém pode me ajudar?
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  criquio 9/2/2014, 20:30

    Tente assim:

    Código:
    =iif(Int(DifData("d";[NomeCampo1];[NomeCampo2])/7) = 0;"";iif(Int(DifData("d";[NomeCampo1];[NomeCampo2])/7)=1;Int(DifData("d";[NomeCampo1];[NomeCampo2])/7) & " semana";Int(DifData("d";[NomeCampo1];[NomeCampo2])/7) & " semanas")) & iif(DifData("d";[NomeCampo1];[NomeCampo2]) Mod 7=0;".";iif(DifData("d";[NomeCampo1];[NomeCampo2]) Mod 7 =1; " e " & DifData("d";[NomeCampo1];[NomeCampo2]) Mod 7 & " dia."; " e " & DifData("d";[NomeCampo1];[NomeCampo2]) Mod 7  & " dias."))

    DICA: copie tudo, jogue no bloco de notas e use o Editar>Substituir para substituir Todos "NomeCampo1" pelo nome do campo 1 e todos "NomeCampo2" pelo nome do campo 2 e depois cole na origem do campo aonde quer que o texto apareça.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 9/2/2014, 22:21

    Boa noite, Críquio.
    Muito obrigado por mais uma vez vir socorrer os aprendizes de Access.

    Inseri o código no Campo, mas deu êrro assim mesmo. Vou colocar aqui parte do Banco de Dados pra você, ou outro amigo ver onde está errado.

    Ao abrir o BD abra o "Fml_CadastroFamilias", escolha o Titular "Abilio....". Em baixo tem os memmbros desta familia. Clique duas vezes em "Simone". Abrirá o Fml_Individual da mesma. Nesse Form tem o botão "Saúde da Mulher" . Clique nele e veja o Fml_SaudeDaMulher. Na aba "PreNatal" está o problema, que não consegui resolver. Veja que está dando o erro "#NOME?".

    Link: https://www.dropbox.com/s/sypro8epavuupwu/CalculoSemanasGesta%C3%A7%C3%A3o2.zip
    OBS: Desculpe. Não consegui anexar o arquivo, por isso coloquei o link.

    Um abraço.

    Walter
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Alexandre Neves 10/2/2014, 18:41

    Boa noite, Walter
    Com a permissão do amigo Críquio
    Onde está o campo DUM?


    .................................................................................
    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
    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 10/2/2014, 19:45

    Boa tarde, Alexandre. Tudo bem?
    Veja que existem 3 formularios aninhados...
    Fml_SaudeDaMulher
    SubFml_PreNatal
    SubFml_ConsultasPreNatal

    O Campo DUM (data da última menstruação) está no segundo Form (SubForm_PreNatal, mas peguei o valor da DUM e coloquei num campo que vai ficar invisivel, no terceiro formulario ( coloquei em vermelho para destaca-lo) e o nomeei de DUM1. Usei para isso o "Parent".
    Provavelmente não precisaria fazer isso, não é mesmo? Poderia buscar o valor da DUM diretamente, sem criar o Campo DUM1, mas testei desse jeito e nao consegui faze-lo.... (Coisas de iniciante....)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Alexandre Neves 10/2/2014, 20:20

    Não estou a perceber onde se encontram os dados de origem
    Como relaciona a tabela Tbl_Gravidez com a tabela Tbl_ConsultaPreNatal?


    .................................................................................
    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
    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 10/2/2014, 20:40

    Alexandre.

    A Tbl_MembrosDaFamilia se relaciona (um para muitos) com a Tbl_Gravidez (Via campo CódigoMembrosFamilia).
    A Tbl_Gravidez se relaciona (um para muitos) com a Tbl_ConsultaPreNatal (via campo CódigoGravidez).

    O Fml_Saúde da Mulher tem origem na Tbl_MembrosDaFamilia
    o Fml_Gravidez tem origem na Tbl_Gravidez
    O Fml_ConsultaPreNatal tem origem na Tbl_ConsultaPreNatal

    Foi isso que você perguntou, ou entendi mal?

    Obrigado,

    Walter
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Alexandre Neves 10/2/2014, 21:46

    Walter
    Normalize os nomes de campos, de controlos, etc.. Ter o mesmo nome do campo e do controlo só pode piorar o desempenho e a análise.
    Ao abrir do formulário fml_SaúdeDaMulher criei código para actualizar campo IGDUM (criei) na tabela Tbl_ConsultaPreNatal
    Nem precisa do campo auxiliar no sub-formulário
    https://dl.dropboxusercontent.com/u/24017093/MaximoAccess/CalculoSemanasGesta%C3%A7%C3%A3o2.zip


    .................................................................................
    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
    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 11/2/2014, 00:01

    Muito bom, Alexandre.
    Ficou exatamente como eu precisava.

    Agora vou tentar fazer o mesmo no meu BD.
    Pelo que entendi, pela solução que você criou, não precisa usar aquela Formula do Críquio.

    É isso mesmo?

    Walter
    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 11/2/2014, 09:44

    Bom dia, Alexandre.

    Você fez alguma outra modificação no BD, além das que mencionou acima?

    É porque tentei fazer no meu BD o mesmo que voce fez e não funcionou...

    Dá o seguinte erro:

    "Erro em tempo de execução 3085"
    Função "SemanaDias" indefinida na expressão
    Walter
    Walter
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 369
    Registrado : 17/04/2011

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Walter 11/2/2014, 18:36

    AAAAAAAhhhhhh!!!!

    Agora sim.
    Achei que você tinha incluido "apenas" o código no evento "ao abrir" do Form. Só agora consegui descobrir o Módulo "SemanasDias" que você criou. Incluí o mesmo no Formulário e....
    Tchan! Tchan! Tchan!  Tchan!!!!
    Serviu como uma luva!!! Perfeito.
    Para os que se interessarem aí vai o Módulo:

    Option Compare Database
    Option Explicit

    Public Function SemanasDias(Optional DataInicial, Optional DataFinal) As String
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' '
    ' código criado por Alexandre Neves, do Fórum MaximoAccess '
    ' o código pode ser utilizado livremente, desde que mencionado este cabeçalho '
    ' '
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    'em 2014-02-10 para Walter
       Dim Semanas As Integer, Dias As Integer
       If IsMissing(DataInicial) Or IsMissing(DataFinal) Or IsNull(DataInicial) Or IsNull(DataFinal) Then
           SemanasDias = "?"
       Else
           Dias = DateDiff("d", DataInicial, DataFinal)
           Semanas = Dias \ 7
           If Semanas = 0 Then
               SemanasDias = Dias & " dias"
           Else
               Dias = Dias - Semanas * 7
               If Dias = 0 Then
                   SemanasDias = Semanas & " semanas"
               Else
                   SemanasDias = Semanas & " semanas e " & Dias & " dias"
               End If
           End If
       End If
    End Function


    Valeu, Alexandre. Muito obrigado, mais uma vez!


    Um abraço.

    Walter
    avatar
    kbsao5
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 07/02/2017

    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty ajuda

    Mensagem  kbsao5 6/12/2021, 11:46

    Sei que está como resolvido, mas estou com o mesmo problema, e gostaria de saber se o autor do tópico poderia compartilhar novamente o arquivo?
    Grato

    Conteúdo patrocinado


    [Resolvido]Quantas semanas tem entre duas datas citadas? Empty Re: [Resolvido]Quantas semanas tem entre duas datas citadas?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/5/2022, 00:20