Unterdrückung von Fehlermeldung
Ruth Cordes
- vb-script
Guten Morgen! Nachdem ich monatelang immer mal wieder sehr erkenntnisbringend hier gestöbert habe, versuche ich mal, eine direkte Antwort auf mein Problem zu bekommen: Von meiner HTML-Seite starte ich eine Word-Datei in einem eigenen unabhängigen Word-Fenster. Das Dokument, das ich öffne, ist mit einer Serienbriefdatenbank verknüpft. Diese Verknüpfung wurde zuvor unter Word 2000 erstellt. Sobald ein User aber "nur" Word 97 installiert hat, funktioniert die Verknüpfung nicht mehr. Er muß sie selbst zu Fuß einrichten. Das klappt auch alles, aber soblad der IE wieder den focus hat, gibt er die Fehlermeldung heraus, daß die Verknüpfung der Word-Datei mit der entsprechenden Datenbank nicht möglich ist (und fragt, ob das Script trotzdem weiter ausgeführt werden soll). Das stimmte zwar, ist aber lästig, überflüssig und verunsichernd, denn inzwischen hat der User die Verknüpfung ja selber hergestellt. Wie kann man diese Fehlermeldung unterdrücken???
Ich benutze für den Aufruf von Word aus dem Browser heraus folgendes VB-Script:
<SCRIPT LANGUAGE=VBScript>
Dim objWord
Sub Btn1_onClick(datei)
call OpenDoc(datei)
End Sub
Sub OpenDoc(strLocation)
Set objWord = CreateObject("Word.Application")
objWord.Visible = True 'Word erscheint in der Taskleiste
objWord.Activate 'Word Aktivieren
objWord.WindowState = wdWindowStateMaximize 'Word Maximieren
objWord.Documents.Open strLocation
End Sub
Die Fehlermeldung gibt als Fehlerzeile die "objWord.Documents.Open strLocation" - Zeile an, die wird natürlich benötigt, weil mit strLocation der Pfad der zu öffnenden Datei übergeben wird!
HILFE!
Ruth
PS: Die Verknüpfung einfach mit Word 97 zu erstellen klappt übrigens auch nicht, weil Word 2000 dann mit der Verknüpfung nichts anfagen kann ...
Hallo Ruth,
so aus dem Bauch raus gibt es zwei Möglichkeiten:
Sub OpenDoc(strLocation)
On Error Resume Next
»»Set objWord = CreateObject("Word.Application")
..
..
objWord.Documents.Open strLocation
set objWord = Nothing
End Sub
Für eleganter halte ich allerdings die Word-Version abzufragen und dann entsprechend zu reagieren:
Sub OpenDoc(strLocation)
»»Set objWord = CreateObject("Word.Application")
Select Case objWord.Version
Case "8.0" '=Word97
Mach was
Case "8.0a" '=Word97/SP1
Mach sonst was
Case "?" '=Word2000(Ich kenne die Versionsnummer nicht)
Mach jenes
End Select
set objWord = Nothing
End
Viele Grüße aus Köln
Markus