VBA-Word 97 - Variablensuche!1

Hallo,

ich habe folgendes Problem:
Ich will feststellen, ob eine Dokumentenvariable existiert.

d.h. ich möchte den Fehler abfangen, wenn ich
activedocument.variables(„VariablenName“).value
aufrufe.

Laut Handbuch müßte
IsObjectvalid (activedocument.variables(„VariablenName“).value ) = false
funktionieren, falls die Variable nicht existiert.
Ich bekomme aber immer die Fehler Meldung:
„Object has been deleted“

Kann mir jemand sagen, welchen Is… Befehl ich benutzen muß?
IsNull und IsObject klappt auch nicht.

Danke
Rüdiger

Hi Rüdiger,

was hältst Du von der Variante:

function variable_vorhanden(VariablenName
as STRING) as BOOLEAN
on Error goto Fehlerbehandlung
variable_vorhanden = TRUE
dummy = activedocument.variable.
(„VariablenName“).value
exit function
:Fehlerbehandlung
variable_vorhanden = false
resume next
end function

Ist zwar nicht so elegant, müßte es aber tun.

Ciao

Uwe

Hallo Rüdiger

Eine direkte Möglichkeit gibt es hier wohl leider nicht, eine indirekte schon.

Gruss
S. Widmer

Sub TestW()
VarName = „TestVar“
Flag = False
For Each oVar In ActiveDocument.Variables
If oVar.Name = VarName Then
Flag = True
Exit For
End If
Next
If Flag = False Then
MsgBox „Die Variable " & VarName & " existiert nicht.“
Else
MsgBox "Der Wert von " & VarName & " lautet: " & ActiveDocument.Variables(VarName).Value
End If
End Sub

DANKE!
Danke Silvia und Uwe.

Ich habe den Vorschlag von Uwe realisiert und rufe nun immer eine eigene Funktion auf, in der ich den Fehler abfange und dann entweder einen leeren String oder den Inhalt zurückgebe.

Vielen Dank nochmal für die prompten Antworten.

Gruß
Rüdiger