MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Chamar relatório através da listbox

    Compartilhe

    moacirfj
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 51
    Registrado : 23/12/2013

    [Resolvido]Chamar relatório através da listbox

    Mensagem  moacirfj em Qua 23 Abr 2014, 13:36

    Bom dia amigos,

    Tenho um formulário que é um menu principal criado no formato de menu TreeView, ao clicar no item ele abre uma listbox, nesta lista tenho alguns itens que são relatórios e necessito que seja aberto em visualizar impressão, estou utilizando as instruções abaixo, porém a instrução está retornando erro. Como poderia solucionar este problema.

    Private Function AbreObjetos(frm4 As Form)
    'Insere a função OpcaoMenu no evento "ao clicar" da listbox
    Dim ctl4 As Control
    For Each ctl4 In frm4.Controls
    Select Case ctl4.ControlType
    Case acListBox
    ctl4.OnClick = "=OpcaoMenu(" & ctl4.Name & ")"
    End Select
    Next
    End Function

    Private Function OpcaoMenu(lista As ListBox)
    'Abre o formulário listado na 2ª coluna da listbox clicada
    DoCmd.OpenReport lista.Column(1)
    End Function



    E no evento ao carregar do form:


    Call AbreObjetos(Me)

    Leandro
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1574
    Registrado : 12/11/2009

    Re: [Resolvido]Chamar relatório através da listbox

    Mensagem  Leandro em Qua 23 Abr 2014, 17:49

    Moacir quando eu desenvolvi esse menu eu o usava para abrir apenas formulário, para sua necessidade faça o seguinte:

    Na tabela onde você insere os nomes dos objetos, crie mais uma coluna com o tipo de objeto, exemplo:

    Formulários - 1
    Relatórios - 2

    Insira mais essa coluna na listbox e dentro da função OpcaoMenu insira um If, exemplo:

    Private Function OpcaoMenu(lista As ListBox)
    'Abre o Formulário ou Relatório listado na 2ª coluna da listbox clicada
    If lista.Column(4) = 1 Then 'Informei como coluna 4 para exemplo
       DoCmd.OpenForm lista.Column(1)
       Else
       DoCmd.OpenReport lista.Column(1)
    End If
    End Function


    .................................................................................




    Algumas soluções em access



    Menu Treeview

    Restringir valores já lançados em caixa de combinação - Texto

    Restringir valores já lançados em caixa de combinação - Valores numéricos



    moacirfj
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 51
    Registrado : 23/12/2013

    Re: [Resolvido]Chamar relatório através da listbox

    Mensagem  moacirfj em Ter 15 Jul 2014, 14:09

    OK, Obrigado

    Att.

    Moacir

      Data/hora atual: Dom 04 Dez 2016, 01:58