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