Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Botão De Comando Para Abrir Arquivo Externo


HClausing
 Share

Question

Boa tarde,

Construí um aplicativo no access e gostaria de fazer com que um botão abrisse o arquivo de ajuda do aplicativo, que se chama Guia.pdf, localizado na pasta \Ajuda. Porém não consegui nada ainda, já tentei o seguinte:

1ª tentativa:

Dim x As Object

x = Shell (App.Patch & "\Ajuda\" & "Guia.pdf", vbNormalFocus)

NÃO DEU CERTO

2ª tentativa (copiei o Guia.pdf para a pasta principal do aplicativo):

Dim x As Object

x = Shell (App.Patch & "\" & "Guia.pdf", vbNormalFocus)

NÃO DEU CERTO TAMBÉM <_< <_< <_<

3ª tentativa (copiei o Guia.pdf para c:\):

Dim x As Object

x = Shell ('c:\Guia.pdf", vbNormalFocus)

Agora melhorou, pois o erro foi de arquivo não encontrado, porém NÃO DEU CERTO TAMBÉM

Alguém pode me ajudar?

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

A função shell executa programas executáveis então você teria que informar o caminho de onde ele deve buscar o acrobat, algo assimm

x=shell("C:\Arquivos de programas\Adobe\Acrobat 6.0\Reader\AcroRd32 C:\guia.pdf",vbNormalFocus)

Bom acho que deve funcionar!

Link to comment
Share on other sites

  • 0

Consulteu agora de manhã e notei que escrevi errado só aqui no fórum, me desculpe a falha, porém

A função shell executa programas executáveis então você teria que informar o caminho de onde ele deve buscar o acrobat, algo assimm

x=shell("C:\Arquivos de programas\Adobe\Acrobat 6.0\Reader\AcroRd32 C:\guia.pdf",vbNormalFocus)

Já entendi que meu problema é mais embaixo, pois a cada máquina onde eu for instalar o aplicativo poderá ter um reader de versão diferente, o correto seria fazer o aplicativo buscar o .exe do reader e executar de onde ele estiver. Bom muito obrigado pela ajuda, vou tentar a dica que me deu!

Complementando: Testei e funcionou, porém quando eu fecho o guia.pdf, o vba me retorna o reguinte erro:

Erro em tempo de execução '91'

A variável do objeto ou a variável do bloco 'With' não foi definida.

Tentei fazer assim:

Dim x as Object

With x

x=shell("C:\Arquivos de programas\Adobe\Acrobat 6.0\Reader\AcroRd32 C:\guia.pdf",vbNormalFocus)

End With

Deu na mesma... :(

Bom, obrigado pela ajuda, mas pelo método da insistência deu certo, vejam como fiz, e também se possível escrevam aquele "(Resolvido)" no título do tópico:

1º) Ao invés de declarar uma variável "x" e ao clicar no botão x ser igual a Shell ... já uso diretamente o Shell ao clicar no botão (o erro não aparece mais!)

2º) Ao invés de chamar o AcrRd32.exe, que pode variar de localização de acordo com sua versão o até por opção do usuário de instalar em uma pasta alternativa, eu chamo o explorer.exe do windows e coloco para abri o guia.pdf. FUNCIONA!! e nem abre a janela do explorer! já vai direto para o adobe reader!! VERY GOOD!!

Edited by HClausing
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.1k
    • Total Posts
      647.1k
×
×
  • Create New...