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


2 participantes

    [Resolvido]Criação de variável pública para o vba/access

    avatar
    wjfe48
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/09/2016

    [Resolvido]Criação de variável pública para o vba/access Empty [Resolvido]Criação de variável pública para o vba/access

    Mensagem  wjfe48 15/11/2016, 19:04

    Sou relativamente novo na programação VBA, mas detenho bons conhecimentos de programação em outras linguagens.
    O meu problema consiste em tornar uma variável pública para os demais formulários dentro do mesmo projeto.
    Tal variável é o cpf do usuário, informação que retiro de tabela do access e já confirmei que isso ocorre ao depurar o procedimento.
    Contudo a variável se comporta como Private.
    O meu projeto é composto de vários formulários e cada um tem seu próprio código e estes estão sob um Objeto de Classes que está sob o projeto.

    A simples declaração: Public CPF_NP As String feita fora do procedimento, logo a seguir ao Option Compare Database não é suficiente.

    Assim, gostaria ao menos de sugestões ou da indicação de como deveria proceder para declarar a variável como pública.

    Obrigado,

    Waldemar
    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

    [Resolvido]Criação de variável pública para o vba/access Empty Re: [Resolvido]Criação de variável pública para o vba/access

    Mensagem  rubenscouto 15/11/2016, 20:23

    você vai ter que criar uma função publica que capta o CPF_NP do cliente mas isto tem que ser feito em alguma parte do formulario de login ou do formulario de cadastro do cliente. Ex.:

    Function que retorna o nome do usuário de rede logado

    Public Function UsuarioRede() As String
    Dim GetUserN
    Dim ObjNetwork
    Set ObjNetwork = CreateObject("WScript.Network")
    GetUserN = ObjNetwork.UserName
    UsuarioRede = GetUserN
    End Function

    em uma caixa de texto, coloque o seguinte argumento:
    =UsuarioRede()

    Esta, por exemplo, retorno o nome do usuario logado do Windows.

    para buscar o CPF_NP do seu usuario, vai ter que usar o argumento:
    =Dlookup("CPF_NP";"TabelaUsuario";"Usuario = " & me.SuaCaixaDeTextoDoSeuformulario

    entendeu?
    avatar
    wjfe48
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/09/2016

    [Resolvido]Criação de variável pública para o vba/access Empty Agradecimento

    Mensagem  wjfe48 17/11/2016, 13:34

    Agradeço pela resposta tão rápida, mas meus conhecimentos ainda não abarcam estes comandos.
    Minha 1ª intenção era entender a abrangência da variável pública, além de usá-la de imediato, o que me mostrou ser apenas a função pública realmente de uso geral dentro do projeto.
    Embora não tenha usado sua sugestão de código, elaborei outra que também me serviu e aqui posto para o caso de alguém mais poder usá-la.
    Para gravar a identificação do usuário, a princípio no próprio micro:

    Public Function GravaCPF(RFB As String)

    Const var_arq = "C:\AdmCond\cpf.doc"

    If Dir(var_arq) <> vbNullString Then
              Kill var_arq
    End If
              Open var_arq For Output As #1
              Write #1, RFB
              Close #1
             
    End Function


    E para recuperar a informação em qualquer formulário:

    Public Function LerCPF()

    Const var_arq = "C:\AdmCond\cpf.doc"

    If Dir(var_arq) = vbNullString Then
          Beep
          MsgBox "O arquivo de identificação do usuário está vazio.", , "ATENÇÃO !!! "
    Else
          Open var_arq For Input As #1
          Input #1, LerCPF
          Close #1
    End If


    Agradeço a ajuda e usarei sua sugestão para buscar mais conhecimentos sobre os comando utilizados.

    Um abraço,

    Waldemar
    avatar
    wjfe48
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 03/09/2016

    [Resolvido]Criação de variável pública para o vba/access Empty Re: [Resolvido]Criação de variável pública para o vba/access

    Mensagem  wjfe48 17/11/2016, 13:36

    Obrigado.

    Conteúdo patrocinado


    [Resolvido]Criação de variável pública para o vba/access Empty Re: [Resolvido]Criação de variável pública para o vba/access

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 10:42