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]Aproveitando uma instância já aberta do Word ao carregar um relatório

    avatar
    luchyanus
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 22/05/2012

    [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório Empty Aproveitando uma instância já aberta do Word ao carregar um relatório

    Mensagem  luchyanus 31/5/2012, 14:59

    Caros,

    Um botão do Access carregará um relatório no word. Para tanto, utilizarei uma estrutura como esta:

    dim word as word.application
    dim doc as word.document

    sub LoadReport(filename as string)
    set word = CreateObject("word.application")
    set doc = word.documents.open(filename)
    word.visible = true
    set doc = nothing
    set word = nothing
    end sub

    Não é incomum que o Word já esteja aberto na máquina do usuário, então, seria interessante reaproveitar a instância já existente e não criar uma nova.

    Neste caso, logo após o CreateObject, penso que deveria acionar algum comando para que word não contivesse uma instância qualquer, mas sim a atualmente carregada na memória.

    Alguém saberia dizer como se faz isso?

    Luciano
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório Empty Re: [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório

    Mensagem  criquio 31/5/2012, 17:18

    É possível contar as instâncias de um objeto aberto e usar o resultado para o que pretendes. Se for 0, cria o objeto Word e se for maior que 0, apenas executa as outras ações. Teste o código abaixo sem uma instância do Word aberta e depois com o Word aberto:

    Código:
    Computador = "."

    Set WMIServ = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & Computador & "\root\cimv2")
    Set Processo = WMIServ.ExecQuery("Select * from Win32_Process Where Name = 'winword.exe'")

    MsgBox Processo.Count

    Set Processo = Nothing
    Set WMIServ = Nothing
    Funcionando, é só adaptar. Essa função pode ser adaptada para excluir processos abertos, entre outras façanhas.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    luchyanus
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 22/05/2012

    [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório Empty Re: [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório

    Mensagem  luchyanus 31/5/2012, 18:27

    Estou impressionadíssimo. Tudo o que eu não esperava é que se pudesse acessar as instâncias por meio de uma instrução SQL!
    Muito obrigado!

    Conteúdo patrocinado


    [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório Empty Re: [Resolvido]Aproveitando uma instância já aberta do Word ao carregar um relatório

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/5/2024, 21:06