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

    [Resolvido]Alterando Fonte do Controle em campos no Relatório via VBA

    avatar
    kleber_mary
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 21/12/2015

    [Resolvido]Alterando Fonte do Controle em campos no Relatório via VBA Empty [Resolvido]Alterando Fonte do Controle em campos no Relatório via VBA

    Mensagem  kleber_mary 20/9/2016, 16:59

    Olá,

    Gostaria de poder solicitar ajuda no que diz respeito a relatório no Access.
    Tenho um relatório chamado FichaFinanceira01, e tem um campo que chamei de TD1, que no campo Fonte do Controle, tinha este valor =SeImed([01/2015]<0;0;[01/2015]). E funciona bem.
    Por ser um relatório que tem uma consulta por referência cruzada, toda vez que altera o ano, os campos também são alterados (exemplo: de [01/2015] para [01/2016]);
    Tive uma ideia de alterar este valor via VBA, onde poderia usar um mesmo relatório, alterando os valores dos campos apenas, quando for necessário.
    Mas o problema é que não estou conseguindo sucesso neste caso.
    Se puderem me ajudar...

    Muito Obrigado

    Complementando a minha questão... Eu gostaria de colocar via VBA, a função especificada acima, dentro do campo FONTE DO CONTROLE nas caixas de textos determinados. Quando insiro o comando:
    Reports!FichaFinanceira01![TD1].ControlSource = "=SeImed([01/2015]<0;0;[01/2015])" retorna a seguinte mensagem de erro: "A expressão que você inseriu contém sintaxe inválida."

    Quem puder ajudar, eu já agradeço.

    Kleber


    Última edição por kleber_mary em 20/9/2016, 21:03, editado 1 vez(es) (Razão : Complementação)
    avatar
    kleber_mary
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 21/12/2015

    [Resolvido]Alterando Fonte do Controle em campos no Relatório via VBA Empty Re: [Resolvido]Alterando Fonte do Controle em campos no Relatório via VBA

    Mensagem  kleber_mary 24/9/2016, 01:28

    Pessoal,

    Resolvi o problema. Para quem tiver uma questão semelhante, e quiser a solução, segue o que fiz e consegui.

    Em um relatório, na parte Detalhe, existe a caixa de texto, que nomeei TD01, onde em Propriedades tem o campo Fonte do Controle. Manualmente, inseri o seguinte valor =SeImed([01/2015]<0;0;[01/2015])

    O relatório funciona perfeitamente, mas para realizar a alteração via VBA, tem que seguir alguns passos:
    No formulário onde tem o botão que chama o relatório, em eventos clicar, inseri estes comandos:

    'abrir o relatório em modo Design
    DoCmd.OpenReport "FichaFinanceira01", acViewDesign

    'alterar a Fonte do Controle da Caixa com o seguinte comando
    Reports!FichaFinanceira01![TP1-01].ControlSource = "=IIF([01/2015]<0,0,[01/2015])"

    'depois Salvar, Fechar o relatório Design e reabri-lo no modo Preview
    DoCmd.Save
    DoCmd.Close
    DoCmd.OpenReport "FichaFinanceira01", acViewPreview


    Após estes comandos, conferi o relatório em modo Design e observei que já foi alterado como se fosse manualmente "=SeImed([01/2015]<0;0;[01/2015])"

    Obrigado a todos.

    PS:
    Aconteceu a mesma coisa com outra função =Soma()
    Para alterar via VBA tem que usar =Sum()

      Data/hora atual: 12/4/2021, 01:55