Ruth Cordes: Unterdrückung von Fehlermeldung

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 ...

  1. 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