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


3 participantes

    Como usar as mesmas variaveis de uma funcao anterior

    avatar
    skzz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/05/2014

    Como usar as mesmas variaveis de uma funcao anterior Empty Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  skzz 14/11/2016, 20:25

    oi pessoal, gostaria de que me tirassem uma dúvida, primeiro se é possível e depois como pode ser feito
    tenho um módulo com 2 funções, eu teria uma função unica mas preciso de 2 resultados, então uma função para cada calculo, correto?

    uma função calcula horas extras e a outra calcula adicional noturno
    mas para calcular o adicional noturno, preciso de todo o calculo de horas antes, a duvida entra aí


    no momento estou copiando toda a função das horas pra função de adicional noturno, e ai faço o calculo do adicional, mas fica uma função gigante e me parece estranho que não tenha uma ligação entre funções
    essa gambiarra está funcionando, mas pra simplificar, seria bom que a segunda função só pegasse os resultados da operação de cima (extras) para enfim calcular o noturno.

    espero ter passado com clareza o problema, tomara que consigam me ajudar!

    agradeço desde já
    rubenscouto
    rubenscouto
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Como usar as mesmas variaveis de uma funcao anterior Empty Re: Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  rubenscouto 15/11/2016, 01:29

    Não é possível postar as funções para melhor analise?
    avatar
    skzz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/05/2014

    Como usar as mesmas variaveis de uma funcao anterior Empty Re: Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  skzz 15/11/2016, 09:52

    olá rubens, segue o código


    inthora = Fix(Ent1)
    intmin = Ent1 - Fix(Ent1)


    inthora = inthora * 60
    intmin = intmin * 100

    somaent1 = (inthora + intmin) / 60


    inthora1 = Fix(Sai1)
    intmin1 = Sai1 - Fix(Sai1)


    inthora1 = inthora1 * 60
    intmin1 = intmin1 * 100

    somasai1 = (inthora1 + intmin1) / 60


    essa é a conta básica, no momento eu faço essa conta em 2 funções diferentes, pq a partir dela, faço outras ( mas são bem grandes )
    aproveitando o gancho já deixo uma outra pergunta, é possível uma função retornar mais de um resultado ?


    por exemplo, na minha função eu defino várias variáveis, eu poderia exportá-las ? porque na minha Query no access no momento eu só consigo um resultado, que é o resultado final da função
    philipp.moreira
    philipp.moreira
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 257
    Registrado : 05/02/2016

    Como usar as mesmas variaveis de uma funcao anterior Empty Re: Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  philipp.moreira 21/11/2016, 00:07

    Para usar os valores atribuídos as variáveis usadas na primeira função:

    Forma 1:

    Declarar sua(s) variável como variáveis globais . . . Tipo:

    Dim int_Hora1 As Integer
    Dim int_Hora2 As Integer

    Sub Rotina_Principal()
    .
    .
    .

    ' Chamada da função 1
    ' Aqui como estou fazendo a chamada de uma função que vai retornar um valor, mas, como não estou atribuindo este retorno/valor a nenhuma variável usei a palavra reservada/comando [CALL],
    Call Funcao1()

    ' Chamada da função 2
    ' Aqui como estou fazendo a chamada de uma função que vai retornar um valor, mas, como não estou atribuindo este retorno/valor a nenhuma variável usei a palavra reservada/comando [CALL],
    Call Funcao2()

    .
    .
    .
    End Sub


    Function Function1 ([parâmetros]) As Double

    ' Processamento da função 1

    End Function

    Function Function2 ([parâmetros]) As Double

    ' Processamento da função 2

    End Function


    Forma 2:

    Declarar variável(is) que recebam o retorno da função 1 para reutilizar o(s) valor(es) na chamada da função 2 . . . Tipo:


    Sub Rotina_Principal()

    Dim int_Hora1 As Integer
    .
    .
    .

    ' Chamada da função 1, atribuindo o valor de retorno a variável int_Hora1

    int_Hora1 = Funcao1()

    ' Chamada da função 2 passando como parâmetro o retorno da função 1 e atribuindo o valor de retorno a variável int_Hora2

    int_Hora2 = Funcao2(int_Hora1)

    .
    .
    .
    End Sub


    Function Function1 ([parâmetros]) As Double

    ' Processamento da função 1

    End Function

    Function Function2 ([parâmetros]) As Double

    ' Processamento da função 2

    End Function
    rubenscouto
    rubenscouto
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

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

    Como usar as mesmas variaveis de uma funcao anterior Empty Re: Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  rubenscouto 22/11/2016, 02:51

    mas você utiliza esta função pra que mesmo? tem um arquivo no repositorio que faz quase o que você precisa. no caso dele, conta o tempo que um formulario fica aberto e chegando este tempo, fecha-o.
    avatar
    skzz
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/05/2014

    Como usar as mesmas variaveis de uma funcao anterior Empty Re: Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  skzz 24/11/2016, 03:21

    Philipp, te agradeço pela resposta e vou fazer os testes com base no que você me passou e digo a vocês se deu certo.
    apenas uma pergunta, eu tinha lido que as Subs não retornam resultado, isso é verdade? Se sim, não me adiantaria usar um sub porque preciso de um resultado ao final da função.


    Rubens, eu uso módulo para fazer cálculo de horas com direito a adicional noturno e redução de hora, não existe arquivo ou função que faça isso sozinho :p
    o que acontece é que eu uso a função1 para converter hora sexagesimal(hora relogio) em hora centesimal(ex: 30min = 0,50 ) ecalcular as horas e dar o resultado de Horas Extras
    e uso a função 2 para calcular o adicional noturno, mas preciso também da conversão de horas feita anteriormente.
    o que tenho feito(funciona mas fica feio) é fazer toda a conversão de horas na função2 novamente, mas é um calculo grande e enche a função e cria uma certa confusão na hora de editar.


    Agradeço a ajuda de vocês e tentarei fazer os testes aqui o mais rápido possível pra informar a solução usada.

    Conteúdo patrocinado


    Como usar as mesmas variaveis de uma funcao anterior Empty Re: Como usar as mesmas variaveis de uma funcao anterior

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/3/2024, 09:06