MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    Instrução VBA com variável

    Compartilhe
    avatar
    luisboccardo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 07/04/2017

    Instrução VBA com variável

    Mensagem  luisboccardo em 16/1/2018, 17:08

    Olá, gostaria de utilizar o "requery" na instrução VBA, porém o nome do "sub_formulario" deve ser variável:



       Variavel = "nome_sub_formulario"
       
       Forms!Formulario! <% Variavel %>.Requery


    Qual instrução devo utilizar, para a variável?  < ; % ; & ? Não estou conseguindo
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 353
    Registrado : 27/03/2015

    Re: Instrução VBA com variável

    Mensagem  bigfill em 16/1/2018, 18:05

    Boa tarde luisboccardo

    Não sei se seria isto mais fiz um modelo.

    Veja se atende sua necessidade

    Very Happy
    Anexos
    Variavel.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (30 Kb) Baixado 4 vez(es)
    avatar
    luisboccardo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 07/04/2017

    Re: Instrução VBA com variável

    Mensagem  luisboccardo em 16/1/2018, 18:24

    Valew pela ajuda bigfill,

    Seria quase isso, porém não pode ser em MsgBox.


    Imagine que eu quero atualizar um determinado sub_formulário, a partir de um valor selecionado.


      Variavel = "nome_sub_formulario"    'Este valor será selecionado pelo usuário, ou seja: Dentre uma lista:  Form1, Form2, Form3, Form4 ....
     
      Forms!Formulario!Variavel.Requery     (comando no botão, irá atualizar somente o sub_formulário correspondente à seleção do usuário)


    Em resumo, o nome do formulário, na instrução .Requery, precisa ser variável.
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 353
    Registrado : 27/03/2015

    Re: Instrução VBA com variável

    Mensagem  bigfill em 16/1/2018, 19:26

    Mande o seu BD para analisar
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 333
    Registrado : 23/01/2017

    Re: Instrução VBA com variável

    Mensagem  thiagomcosta em 17/1/2018, 10:43

    Incrível, mas eu me bato com esta coisa de chamar relatórios e formulários através de códigos.

    Mas tente usar a variável entre parenteses no lugar do nome.
    Se der uma Googlada por referenciar fomulários no Access VBA vai achar bastante coisas. Inclusive aqui no fórum tem isso.
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 333
    Registrado : 23/01/2017

    Re: Instrução VBA com variável

    Mensagem  thiagomcosta em 17/1/2018, 10:48

    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 353
    Registrado : 27/03/2015

    Re: Instrução VBA com variável

    Mensagem  bigfill em 17/1/2018, 13:20

    Bom dia luisboccardo

    Olha atualizar pegando o nome do formulário via variável sinceramente acho que não e possível, mais escolher onde deve ser lançado os dados sim.

    Fiz um modelo veja se esta conforme sua necessidade.
    Anexos
    Variavel.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (46 Kb) Baixado 4 vez(es)
    avatar
    luisboccardo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 07/04/2017

    Re: Instrução VBA com variável

    Mensagem  luisboccardo em 17/1/2018, 18:36

    Legal o exemplo bigfill, está próximo da minha necessidade ! Porém quando clico em Lançar apareceu o seguinte erro:


    " Erro em tempo de execução '3073' ; A operação deve usar uma consulta atualizável."
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 353
    Registrado : 27/03/2015

    Re: Instrução VBA com variável

    Mensagem  bigfill em 17/1/2018, 18:48

    luisboccardo, pra mim esta funcionando normalmente

    Qual o sistema operacional esta usando (32 bits ou 64 bits) e qual a versão do Access ?
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 353
    Registrado : 27/03/2015

    Re: Instrução VBA com variável

    Mensagem  bigfill em 17/1/2018, 19:00

    luisboccardo, Muito provável que seja pelo "Grupo de Opções" que estava no modelo anterior.

    Faça o teste com este

    Aguardo retorno Smile
    Anexos
    Variavel.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (47 Kb) Baixado 3 vez(es)
    avatar
    luisboccardo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 28
    Registrado : 07/04/2017

    Re: Instrução VBA com variável

    Mensagem  luisboccardo em 18/1/2018, 10:22

    Estranho, continua o mesmo erro.

    Utilizo: Access 16.0.4498.1000 32bits
    bigfill
    bigfill
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 353
    Registrado : 27/03/2015

    Re: Instrução VBA com variável

    Mensagem  bigfill em 18/1/2018, 10:39

    luisboccardo, provavelmente pode ser por que o meu e 2010 (64 bits).

    De uma olhada neste link para tentar resolver. Pois não tenho certeza mais me parece que já ouvir falar que no 2016 alguns Active X precisão ser habilitados.

    http://www.maximoaccess.com/t8496-resolvidorodar-banco-de-dados-32-bits-em-office-64-bits


    Caso não resolva vamos aguardar os amigos do fórum que possam ter a resposta.
    thiagomcosta
    thiagomcosta
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 333
    Registrado : 23/01/2017

    Re: Instrução VBA com variável

    Mensagem  thiagomcosta em 18/1/2018, 11:18

    Olá! Eu prefiro executar a consulta conforme abaixo, faz a mesma coisa com palavras diferentes:
    Código:
    DoCmd.RunSQL "INSERT INTO " & Vartbl & "(Nome,Numero)" & " Values('" & VarNome & "','" & VarNumero & "');"


    Sobre o erro, tenta dar uma olhada no link abaixo:
    http://www.maximoaccess.com/t16211-resolvidoerro-3073-a-operacao-deve-usar-uma-consulta-atualizavel

    Sobre chamar o formulário com nome numa variável, a linha é assim (fiquei com isso na cabeça e só sosseguei quando aprendi):
    Código:
    Forms.NomeFormularioPrincipal.Form!(Variavel)!Nome
    Sendo que o valor da variável é o nome do formulário.
    Aproveitei o exemplo do bigfill e mudei naquele arquivo mesmo para exemplificar isso.
    Anexos
    NomeDeFormularioNaVariavel.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (27 Kb) Baixado 3 vez(es)

      Data/hora atual: 21/2/2019, 16:40