ABRIR DOC SEM CAMINHO

GUTO 23/10/2009 14:59:47
#326181
Ola pessoal eu to com uma duvida aqui que nao sei como resolver.

Eu fiz um programa que vou gravar num cd e vai poder rodar aparitir dele mesmo, sem ter que baixar, é seguinte:
Ele tem tres botoes

Abrir Tutorial
Abrir Planilha Excel
Abrir Planilha Resultado da Lição

Até ai tudo bem, este .exe, nao vai estar nas mesmas pastas dos docs em questão, o Doc tutorial vai estar numa pasta chamada modulo, assim como as outras planilhas em excel.

MAs como fazer pra apertar este botao, ele abrir o .doc, ou o .exl que está em outra pasta, mesmo que seja dentro do mesmo cd?

Porque veja: se eu tento abrir este tutorial.doc, usando o caminho dele, tipo assim
D:pasta1/Tutorial.doc
E o drive de cd do cliente nao for o D: , mas Sim o F: , ou o G: como o de muitos são.... o programa nunca vai achar a unidade e por isto a pasta e muito menos o doc..

Alguem sabe resolver esta questão?
Pois gostaria de abrir estes documentos apartir do cd, mas nao sei como abri-los só usando o nome... me deram alguasm ideias do tipo:


Private Sub cmdTurorial_Click()

ChDir App.Path [ô]muda o dir para o dir do programa
[ô]se o doc estiver na mesma pasta
Shell App.Path & [Ô]MIx Devocional.doc[Ô]
[ô]se o doc estiver em qualquer pasta
[ô]Shell App.Path & [Ô]\MIx Devocional.doc[Ô]
[ô]deve funcionar

End Sub

e num modulo

Option Explicit

Declare Function ShellExecute Lib [Ô]shell32.dll[Ô] Alias [Ô]ShellExecuteA[Ô] _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


mas nada funciona, eu nao estou testando estes codigos a partir de um cd ainda, mas nem mesmo no desktop ele consegue achar um doc em outa pasta.
Por favor me deem alguams dicas, valewwwww


MARCELO.TREZE 23/10/2009 15:44:05
#326184
Resposta escolhida
colega é simples

ao invés de colocar a letra da unidade vc usa o

App.Path & [Ô]
ome da pasta
ome do arquivo.doc[Ô]


App.Path, pega a unidade onde está o executavel

ou seja não coloque a unidade e sim App.Path &

então reforçào chamar o arquivo

errado:

D:\pasta\arquivo.doc

certo:

App.Path & [Ô]\pasta\arquivo.doc[Ô]

Ok
GUTO 23/10/2009 16:29:11
#326189
Ow boa tarde marcelo, veja bem da erro
Expected: Expresion
no &

Eu coloco o

Shell [ô]Shell App.Path & [Ô]\pasta\arquivo.doc[Ô]

e da erro
GUTO 23/10/2009 16:37:49
#326190
Alias eu fiz assim e abriu, achei nuns projetos perdidos meus, veja só

Option Explicit
Dim wrdApp As Word.Application
Dim wrdAppF As Word.Application
Dim wrdSelection As Word.Selection

Private Sub cmdTurorial_Click()


Dim ObjWord As New Word.Application

Me.MousePointer = 11
ObjWord.Visible = True

[ô] If MsgBox([Ô]Deseja abrir este tutorial?[Ô], vbQuestion + vbYesNo) = vbYes Then


ObjWord.Documents.Open ([Ô]C:\Documents and Settings\Augusto Andrade\Desktop\Programa de Teste Caminho\Caminho do Doc.doc[Ô])


ObjWord.ActiveDocument.Save
[ô] ObjWord.Quit
Set ObjWord = Nothing
Me.MousePointer = 0


[ô] End If


End Sub

Mas ele ainda usa o caminho, como fazer pra nao usar?
MARCELO.TREZE 23/10/2009 18:44:43
#326195
é assim

ObjWord.Documents.Open (App.Path & [Ô]\Programa de Teste Caminho\Caminho do Doc.doc[Ô])
MARCELO.TREZE 23/10/2009 19:27:45
#326197
Vou tentar explicar o melhor

veja bem suponha que vc tenha criado uma pasta chamada [ô]PROGRAMA[ô] dentro da pasta [ô]MEUS DOCUMENTOS[ô], dentro desta pasta você vai por seu projeto e uma outra pasta chamada [ô]DOCUMENTOS[ô] então o caminho para seu projeto seria:

C:\Documents and Settings\Administrador\Meus documentos\Programa\Project1.vbp

usando App.Path

App.Path & [Ô]\Project.vbp[Ô]

agora o caminho documento

C:\Documents and Settings\Administrador\Meus documentos\Programa\Documentos    este.doc

usando app.path

App.Path & [Ô]\Documentos    este.doc[Ô]

entedeu agora
GUTO 24/10/2009 08:46:30
#326211
Opa Bom dia Marcelo

Eu entendi o Path ele resumeria isto: ([Ô]C:\Documents and Settings\Augusto Andrade\Desktop\...

Nao é?

Eu teria que colocar somente a pasta e o nome do documento que esta na pasta rpa ser aberto...

Eu fiz desta forma agora:

ObjWord.Documents.Open (App.Path & [Ô]\Programa de Teste Caminho\Caminho do Doc.doc[Ô])


O documento esta junto da pasta projeto, do jeito que esta ai... Mas da err:

[Ô]O nome do documento ou caminho nao é valido[Ô]

TECLA 24/10/2009 08:58:29
#326212
O exemplo abaixo está usando a mesma API que mencionou (ShellExecute).



LISTAR ARQUIVOS DE DIRETORIO
MARCELO.TREZE 24/10/2009 14:26:56
#326226
tenta iencurtar desta forma

ObjWord.Documents.Open (App.Path & [Ô]\Caminho do Doc.doc[Ô])


isso se o arquivo doc estiver dentro da mesma para do executavel
GUTO 24/10/2009 15:07:08
#326229
TECLA

Muito bom exemplo, mas o pior é que tem varias pastas com documentos, mas muito bom cara, muito obrigado.


GUTO 24/10/2009 15:19:20
#326230
valew Marcelo, acho que é isto mesmo cara! Obrigado pela paciencia neste topico, to a mais de um ano parado to tentando invetar o roda de novo, obrigado a todos
Tópico encerrado , respostas não são mais permitidas