Supportnet / Forum / Datenbanken
anwendungübergreifend programmieren
Frage
hi leutz!
bin dabei eine datenbank zur personalverwaltung zu programmieren. um es dem späteren anwender so einfach wie möglich zu machen, möchte ich einen button einbauen, der dann die word-datei [b]serienbrief_zusagen.doc[/b] öffnet....leider funzt das nicht so.
mein code für den button sieht so aus:
[code]
Option Compare Database
Option Explicit
Private Sub SerienbriefZ_Btn_Click()
On Error GoTo Err_SerienbriefZ_Btn_Click
Dim stAppName As String
stAppName = "X:\pfad\Serienbrief_Zusagen.doc"
Call Shell(stAppName, 1)
Exit_SerienbriefZ_Btn_Click:
Exit Sub
Err_SerienbriefZ_Btn_Click:
MsgBox Err.Description
Resume Exit_SerienbriefZ_Btn_Click
End Sub
[/code]
beim klicken des knopfes bekomm ich immer folgende fehlermeldung:
[quote]
Ungültiger Prozeduraufruf oder ungültiges Argument
[/quote]
hat jemand eine ahnung warum?
gruss
steph
Antwort 1 von defsteph
hab selber eine lösung gefunden. falls es jmd. interessiert, so gehts:
Option Compare Database
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
Public Function OpenDocument(DocumentFile As String) As Long
Dim ret As Long
If Len(DocumentFile) > 0 Then
ret = ShellExecute(Application.hWndAccessApp, "open", DocumentFile, vbNullChar, "", 1)
If Err Then
OpenDocument = 0
ElseIf ret > 32 Then
OpenDocument = -1
Else
OpenDocument = ret
End If
Else
OpenDocument = 0
End If
End Function

