Usuário com melhor resposta
AJUDA COM A SUB DO LUIZ

Pergunta
-
Caros amigos boa tarde :
Como já postei aqui, o nosso amigo Luiz Cláudio me enviou uma grande ajuda, uma sub rotina para VBA em Excel, que faz a procura de um documento em pasta definida na própria sub e quando o arquivo do Word é encontrado ele é aberto :
Private Sub CommandButton1_Click()
Dim WApp As Object
Set WApp = CreateObject("Word.Application")
WApp.Documents.Open ("D:\" & TextBox1.Text & ".doc")
WApp.Visible = True
End SubEssa sub rotina caiu com uma luva para o que eu estava precisando, mas gostaria de perguntar a vocês se existe uma forma de eu tratar o erro que dá quando o documento não é encontrado?
Quando o documento é encontrado o documento do Word é aberto perfeitamente, mas quando o documento a ser encontrado não está dentro da pasta especificada dá o seguinte erro :
"Erro em tempo de execução '5174'
Este arquivo não foi encontrado
Tente uma das opções a seguir"
...etc etc
Com faço para não aparecer essa mensagem, mas sim uma caixa de mensagem(msgbox) com uma mensagem de arquivo não encontrado? ( ex: msgbox"ESSE ARQUIVO NÃO FOI ENCONTRADO!")
Mais uma vez muito obrigado!
Respostas
Todas as Respostas
-
Boa Tarde,
O ideal mesmo seria utilizar o objeto Scripting.FileSystemObject para verificar se o arquivo existe ou não para posteriormente abrí-lo. No entanto, você pode usar uma abordagem mais rápida através do tratamento de erros. Ex:
Code SnippetPrivate Sub CommandButton1_Click()
'Essa linha faz com que qualquer erro seja ignorado
OnError Resume Next
'Procedimento para abrir o arquivo
Dim WApp As Object
Set WApp = CreateObject("Word.Application")
WApp.Documents.Open ("D:\" & TextBox1.Text & ".doc")
WApp.Visible = True'Se houver algum erro
if err.number <> 0 then
msgbox "Erro ao abrir o arquivo"
end
'Essa linha anula o efeito do OnError Resume Next
OnError Goto 0
End SubVeja se ajuda
[ ]s,
Gustavo
-
Como vai amigo Gustavo, obrigado pela sua anção ao meu tópico!!!
Está dando um erro na linha OnError Resume Next e na linha OnError Goto 0 . Quando eu colei as linhas elas ficaram vermelhas, ou seja, o VBA não reconheceu as linhas.
A mensagem que aparece é a seguinte :
Erro de compilação
Era esperado : expressão
Lembrando que a sub que estou usando é para VBA do Excel.
Mais uma vez muito obrigado Gustavo...valeu!!!
-
-