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

    Como fazer referência a um registro de uma tabela dinâmica no Access usando o vba?

    Compartilhe

    MarceloBarroso
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 09/11/2015

    Como fazer referência a um registro de uma tabela dinâmica no Access usando o vba?

    Mensagem  MarceloBarroso em Qui 08 Jun 2017, 11:08

    Prezados,

    Tenho um banco de dados onde em um dos formulários eu apresento uma tabela dinâmica com contagem de processos, por determinados critérios.

    Quando se abre o detalhamento da tabela dinâmica, o access lista os números de processos que compuseram a soma destes critérios.

    Exemplo:   Processos Ativos = 2  (ao clicar no número 2 para saber quais processos compuseram esta soma, verei dentro da tabela dinâmica, que foram, os processos A1111 e B2222).

    O que eu gostaria é poder selecionar um processo qualquer daqueles que foram detalhados na dinâmica e utilizá-lo para então abrir um outro formulário que contém maiores dados deste processo.

    Eu já faço algo semelhante no meu banco, quando eu estou selecionando um processo em uma tabela comum (não sendo tabela dinâmica) onde eu faço um esquema onde eu coloco a tabela com os resultados em uma guia e na outra guia oculta eu coloco o formulário de consulta. Assim, quando o usuário clica em um botão "Consultar", o código pega o número do campo processo do registro em foco, salva na variável strCONSULT e depois abre a guia oculta com o formulário que contém os dados que eu desejo mostrar e faz um find.record com esta informação.  Vide:

    "Private Sub BT_CONSULTAR1_Click()

    Dim strCONSULT As String
    strCONSULT = Forms!F_SICODI_PRAZO1!F_SICODI_PRAZO1_SUB1!PROCESSO1.Value

    Me.GUIA_PRAZOS.Pages!GUIA_PROCESSOS.Visible = True

    Forms!F_SICODI_PRAZO1!F_SICODI_PRINCIPAL1.SetFocus

    DoCmd.GoToControl "PROCESSO1"
    DoCmd.FindRecord FindWhat:=strCONSULT, Match:=acStart, MatchCase:=False, OnlyCurrentField:=acCurrent "

    End Sub


    O meu problema é que eu não consigo fazer o mesmo com uma tabela dinâmica. Simplesmente eu não consigo armazenar em uma variável o campo processo que está selecionado na tabela dinâmica. Não encontrei meios de fazer referência a isto.  Alguém pode me ajudar?  Desde já agradeço.
    avatar
    rfnunes01
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 74
    Registrado : 05/09/2016

    Re: Como fazer referência a um registro de uma tabela dinâmica no Access usando o vba?

    Mensagem  rfnunes01 em Sex 17 Nov 2017, 00:56

    Ola amigo boa noite
    Estou anexando uma exemplo para vc baseado nos dados que vc forneceu
    Ve se te ajuda ok
    No exemplo ha um formuario Frm_ProcessoAtivo abra ele no modo design e da uma olhada no codigo la estou explicando o que acontece
    Espero ter ajudado
    Qualquer duvida estamos aqui
    Anexos
    exemplo.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (29 Kb) Baixado 6 vez(es)

      Data/hora atual: Ter 22 Maio 2018, 12:56