Avatar billede jeffee Nybegynder
30. oktober 2009 - 14:46 Der er 9 kommentarer og
1 løsning

Åbne Open Office writer dokument fra en VB app.

Hvordan åbner jeg eksisterende OOo writer dokument. Jeg kender seævfølgelig stien. Det skal bare åbnes i OpenOffice writer - altså default programmet.

mvh  Jeff
Avatar billede terry Ekspert
30. oktober 2009 - 15:55 #1
you can use code from this link if yoi are using VB6

http://www.mvps.org/access/api/api0018.htm
Avatar billede terry Ekspert
02. november 2009 - 14:30 #2
status please?
Avatar billede jeffee Nybegynder
02. november 2009 - 14:37 #3
Hej Terry

Tak for din hjælp

Jeg har ikke haft tid til at se på det endnu - har været væk fra computeren et par dage, så det bliver først i morgen... men umiddelbart ser det ud til at kunne klar ærterne :)

Giver en melding så snart jeg har tid.

mvh Jeff
Avatar billede terry Ekspert
02. november 2009 - 14:56 #4
Det er i orden Jeff
Avatar billede jeffee Nybegynder
03. november 2009 - 10:24 #5
Jeg har kigget lidt mere på det, og har lidt svært ved at finde ud af hvordan jeg "kører" funktionen.

Jeg har smidt api kaldet i et modul, men hvordan får jeg det eksekveret fra eks en cmd_button med den fil jeg ønsker at åbne?

mhv Jeff
Avatar billede terry Ekspert
03. november 2009 - 17:26 #6
Hi Jeff

This is what I use in a simple version. Its is actually taken from an Access application which is using VBA not VB6 buts its very similar so it should work.


In a module I have this code.

Public 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

Public Const SW_HIDE = 0
Public Const SW_SHOW = 5


Then in the code for a button on a form I have this. You can see there is alos a field on the form (Me.DocumentID).


Private Sub cmdViewDocument_Click()
Dim result As Integer
   
   
    On Error GoTo Err_cmdViewDocument_Click
   
    If Not IsNull(Me.DocumentID) Then
   
        result = ShellExecute(0, "Open", Me.DocumentName, "", Me.DocumentLink, SW_SHOW)

        If result < 32 Then
            msgBox "Couldn't open file ...", vbInformation
       
        End If
   
    End If
   
Exit_cmdViewDocument_Click:
    Exit Sub

Err_cmdViewDocument_Click:
    msgBox Err.Description
    Resume Exit_cmdViewDocument_Click

End Sub
Avatar billede terry Ekspert
03. november 2009 - 17:37 #7
The important part is this

result = ShellExecute(0, "Open", Me.DocumentName, "", Me.DocumentLink, SW_SHOW)


where Me.DocumentName is a field containing the fiel name you want to open

and Me.DocumentLink is the path to the file.

You can also put the path/filename in the 3rd paramater (the one with Me.DocumentName) as you can see in this link


http://www.vb-helper.com/howto_shellexecute.html
Avatar billede terry Ekspert
04. november 2009 - 11:29 #8
Thanks, hope you got somethng working.
Avatar billede jeffee Nybegynder
04. november 2009 - 11:35 #9
Hi Terry

Thanks it was perfect..  exactly what I needed.

Jeff
Avatar billede terry Ekspert
04. november 2009 - 11:54 #10
super
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester