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

    [Resolvido]Como chamar funções globais

    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 19/01/2013

    [Resolvido]Como chamar funções globais Empty [Resolvido]Como chamar funções globais

    Mensagem  João Ricardo 4/2/2014, 00:13

    Olá amigos!

    No meu bd tem vários formulários nos quais eu tenho que incluir duas funções. Eu gostaria que elas fossem chamadas no evento Ao Clicar de uma caixa se listagem.
    Qdo as funções estão dentro do formulário eu consigo chamar-las usando o Call, mas isso não é o ideal, pois dessa forma tenho que colar elas em todos os forms.

    Estou usando a opção de criar um módulo e dentro dele inserir as duas funções na ordem que serão usadas.
    Não há variáveis em uso.

    Segue abaixo as duas funções no módulo Codigo_MsgCarregaNome.

    Código:
    Option Compare Database
    Option Explicit

    Function fncCarregaNome()
    On Error GoTo fncCarregaNome_Err
        DoCmd.SearchForRecord , "", acFirst, "[RGM] = " & Str(Nz(Screen.ActiveControl, 0))
    fncCarregaNome_Exit:
    Exit Sub

    fncCarregaNome_Err:
        MsgBox Error$
        Resume fncCarregaNome_Exit

    End Function

    '----------------------------------------------------------------
    'Função criada para enviar mensagem referente à situação do aluno
    'Transferido ou Semi-interno
    '----------------------------------------------------------------
    Function fncMensagem()
        Dim strMsg As String
            strMsg = "Este aluno é Transferido e/ou Semi-Interno." & Chr(13) & Chr(10) & " Por favor, selecione outro aluno!"
           If Transferido = -1 Or InternoSeminterno = "Semi-interno" Then
                    MsgBox (strMsg), vbSystemModal + vbExclamation, "Sistema Educacional"
                       sfrmAlunoNoAlojamento.Visible = False
                Else
                    sfrmAlunoNoAlojamento.Visible = True
            End If
    End Function

    Como faço para chamar as funções? Terão que ser separadas ou podem estar inclusas dentro de um módulo?
    Pesquisei em dois tópicos com esse tema, do mestre Criquio, mas não consegui.

    Grato
    avatar
    TorresForte
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 37
    Registrado : 18/05/2010

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  TorresForte 4/2/2014, 09:20

    mano eu praticamente faço assim:

    nomeDoModulo.nomeDaFunção

    ou

    nomeDoModulo.nomeDaFunção(argumento1, argumento2, ...)

    agora, se as suas funções funcionam quando estão no próprio formulário, o que deve estar acontecendo e que as funções que vc colocou no modulo esteja dando referencias e algum controle que realmente não existe no modulo e sim no formulário!

    Exemplo

    Um formulário contendo um controle txtResultado e um btOK

    1- Ao clicar no botão btOK e pra escrever o nome CLICADO!!

    o código estando dentro do formulário ficaria assim geralmente assim!

    txtResultado = "CLICADO!!"

    agora se o código estivesse em um modulo e fosse escrito igualmente foi no formulário não daria certo! já que o txtResultado e um controle Privado do formulário! BLZ!?

    E no modulo e possível sim ter mais de uma função, inclusive pode ter funções subs! também!!



    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 19/01/2013

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  João Ricardo 4/2/2014, 16:53

    Fala Torres!  cheers 

    No meu caso são duas funções em um módulo - fncCarregaNome e fncMensagem, daí não daria para chamar a função através do esquema "nomeDoModulo.nomeDaFunção", ou daria? Também não estou usando variáveis, porque uma das funções (fncCarregaNome) é uma macro de localização de registro convertida em módulo e a outra, fncMensagem, faz comparações de campos dos formulários, se estão preenchidos ou não.

    Dentro que exposto, tem como resolver o problema ou eu estou "comendo barriga"? Se não der, vc teria alguma outra ideia, mesmo tendo que alterar o formato do módulo ou das funções?

    Sds
    Rui Maciel
    Rui Maciel
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 298
    Registrado : 11/09/2012

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  Rui Maciel 5/2/2014, 06:37

    Bom dia Ricardo
    Anexe a sua base de dados para poder verificar.
    Cumprimentos,
    Rui Maciel
    avatar
    TorresForte
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 37
    Registrado : 18/05/2010

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  TorresForte 5/2/2014, 10:09

    João, daria sim!

    Ex.:
    nomeDoMudulo.fncCarregaNome

    nomeDoMudulo.fncMensagem


    Como seu caso parece um pouquinho mais complexo, Anexe ai a base de dados!

    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 19/01/2013

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  João Ricardo 5/2/2014, 23:35

    Amigos, obrigado pelo retorno!

    Segue o bd para análise.
    Lembrando que tem apenas um form e que devo usar as funções para vários outros.

    Felicidades a todos.

    Chamar funções
    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 19/01/2013

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  João Ricardo 8/2/2014, 01:59

    Maciel, Torres

    Viram alguma possibilidade?

    Até +
     bounce bounce bounce bounce Very Happy Very Happy Very Happy 
    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 19/01/2013

    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  João Ricardo 27/2/2014, 19:01

    Resolvi o problema
    Grato a todos, mas tiverem mais alguma ideia, pode mandar.

    Conteúdo patrocinado


    [Resolvido]Como chamar funções globais Empty Re: [Resolvido]Como chamar funções globais

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 22:46