Hallo!
Ich hätte folgende Frage:
vor einigen Tagen habe ich mir die Frage gestellt wie ich in einem Formular mit ankreuzbaren Kästchen es hinkriege, dass innerhalb einer "Kästchengruppe" nur ein einziges Kästchen ankreuzbar wird, also z.B. bei einer Ja/Nein Auswahlmöglichkeit nur eines von beiden. Wenn man dann das andere ankreuzt sollte das zuvor gewählte Kreuz wieder verschwinden.
Schließlich bin ich im Internet auch fündig geworden, und zwar mit diesem Makro:
Sub FormFieldRadioGroup()
Dim ff As FormField
Set ff = ActiveDocument.FormFields(Selection.Bookmarks(1).Name)
If ff.Type = wdFieldFormCheckBox Then
fkt_RadioButton ff.Name, Left(ff.Name, InStr(1, ff.Name, "_"))
End If
End Sub
'
Function fkt_RadioButton(sAktive As String, sGroup As String)
Debug.Print sAktive, sGroup
Dim ff As FormField
For Each ff In ActiveDocument.FormFields
If ff.Type = wdFieldFormCheckBox Then
If Left(ff.Name, InStr(1, ff.Name, "_")) = sGroup Then
If ff.Name <> sAktive And ff.CheckBox.Value = True Then
ff.CheckBox.Value = Not ActiveDocument.FormFields(sAktive).CheckBox.Value
End If
End If
End If
Next ff
End Function
davor sollte man noch die Gruppen von Kästchen eben zusammenfassen also z.B. "grp1_1" nennen, und dann alle weiteren in der Gruppe "grp1_2" etc., also alle Kästchen entsprechend benennen.
das ganze hat auch soweit funktioniert, allerdings hätte ich zwei spezielle Sache in meinem Formular:
1.) Es gibt eine Frage in meinem Formular bei der man sozusagen die "vier wichtigsten" Elemente ankreuzen soll, es stehen aber mehr als vier Elemente zur Auswahl. Mich würde jetzt interessieren ob es möglich wäre ein Makro zu schreiben welches bewirkt dass man in dieser Frage auch nur wirklich maximal vier Kreuze setzen kann, also kein fünftes mehr, es sei denn man hat eine vorherige Auswahl wieder gelöscht.
2.) Es gibt eine Frage bei der man zuerst ein bestimmtes Kreuzchen setzten muss um dann bei der nächsten Auswahlfrage eine von drei Möglichkeiten wählen zu können. Hier würde es mich ebenfalls interessieren ob es möglich wäre ein Makro zu schreiben welches das Ankreuzen des ersten Kästchens sozusagen als "Bedingung" vorraussetzt damit die nächste Auswahlfrage beantwortet werden kann.
Liese sich sowas realisieren? Und wenn ja, ist es möglich das in mein bestehendes Makro einzubauen?
Da ich selber leider keine Makros programmieren kann wäre ich für jede Hilfe und jeden Tipp sehr dankbar!
MFG
PS: Wenn ich mit dieser Anfrage hier komplett falsch sein sollte, bitte einfach kurz Bescheid sagen!
|