Hallo Word-Profis,
ich suche nach einer Lösung für folgendes Problem:
Beim Starten eines Dokuments aus einer Word-Vorlage soll beim Aufrufen eine UserForm automatisch geladen werden. Die Userform soll Infotext enthalten, einen Okay-Button und eine CheckBox oder einen OptionButton. Wenn die Okay-Taste gedrückt wird, ohne dass die Checkbox bzw. der OptionButton deaktiviert wurde, dann soll die UserForm beim nächsten Hochladen des erzeugten Dokuments wieder geladen werden. Jetzt das Problem: Wenn die CheckBox bzw. der OptionButton dektiviert wird, dann soll Word nach betätigen des Okay-Buttons den Wunsch des Nicht-Mehr-Ladens der UserForm bei jedem weiteren Öffnen des Dokuments speichern bzw. die UserForm löschen oder den Ladebefehl, so dass beim nächsten Öffnen des erzeugten Dokuments die Userform nicht mehr erscheint.
Wer weiss das?
Boris
Wenn die CheckBox bzw. der OptionButton dektiviert wird, dann
soll Word nach betätigen des Okay-Buttons den Wunsch des
Nicht-Mehr-Ladens der UserForm bei jedem weiteren Öffnen des
Dokuments speichern bzw. die UserForm löschen oder den
Ladebefehl, so dass beim nächsten Öffnen des erzeugten
Dokuments die Userform nicht mehr erscheint.
hallo boris
für diesen zweck gibt es die dokumentvariablen. einfach beim start auf das vorhandensein einer variable (z.b.„option_gesetzt“) prüfen. ist sie nicht da, den dialog anzeigen. wurde die option aktiviert, dann beim schließen des dialogs diese variable setzen. fertig.
beispiel:
Sub vartest()
Dim varindex As Integer
varindex = getVarIndex(„option_gesetzt“)
If varindex = 0 Then
'option nicht gesetzt…
'für nächsten lauf setzen
ActiveDocument.Variables.Add „option_gesetzt“, „an“
End If
End Sub
Function getVarIndex(varname As String)
Dim variable As variable
getVarIndex = 0
For Each variable In ActiveDocument.Variables
If variable.Name = varname Then getVarIndex = variable.Index
Next
End Function
erwin
Hallo Erwin,
vielen Dank für Deine Hilfe. Ich bin nun schon wieder ein Stück weitergekommen. Leider funktioniert das noch nicht so ganz, weil mein Dokument den Bezug zu der Checkbox nicht herstellen kann. Wenn ich also die CheckBox deaktiviere und aus dem Dokument gehe, fragt Word nicht: „Soll ich speichern?“. Wahrscheinlich habe ich die Programmabschnitte nicht in die richtigen Subs integriert. Folglich lädt Word beim wiederholten Hochladen wieder die Userform.
Viele Grüße
Boris