Optionsgruppen an Textfelder binden (Access 97, 2000)

30.12.2003

Optionsgruppe an ein bestimmtes Datenfeld binden.

Wenn eine Optionsgruppe an ein bestimmtes Datenfeld gebunden wird, kann durch die Auswahl einer bestimmten Option ausschließlich ein Zahlenwert in das Feld eingetragen werden.

In vielen Fällen ist es aber erforderlich, dass die Optionsgruppe an ein Textfeld gebunden wird und dementsprechend je nach Auswahl der Option verschiedene Texte in dem Datenfeld gespeichert werden.

Um dies zu realisieren, legen Sie innerhalb des betreffenden Formulars eine ungebundene Optionsgruppe mit entsprechend vielen Optionsfeldern an. Um dieses Beispiel nachzuvollziehen, weisen Sie der Optiongruppe den Namen optOptionsgruppe zu. Außerdem tragen Sie in die Marke-Eigenschaft (englisch Tag) den Namen des Datenfeldes ein, an das die Optionsgruppe gebunden werden soll.

Als nächstes plazieren Sie innerhalb der Optionsgruppe mehrere Optionsfelder und weisen diesen mittels der Optionswert-Eigenschaft eindeutige Werte zu. Beginnen Sie hierbei mit dem Wert 1. Wenn Ihre Optionsgruppe beispielsweise fünf Optionsfelder beinhaltet, numerieren Sie diese von 1 bis 7 durch.

Das Eintragen der betreffenden Texte in das Datenfeld erledigt Sie mit Hilfe einer Ereignisprozedur, die Sie an das BeimKlicken-Ereignis der Optionsgruppe knüpfen. Wenn Sie beispielsweise einen Wochentag in das Datenfeld eintragen möchten, könnte die Prozedur folgenden Aufbau haben:

Private Sub optOptionsgruppe_Click()

    Dim Datenfeld As String
    'Name des Datenfeldes ermitteln
    Datenfeld = optOptionsgruppe.Tag
    ‘Wochentag in das Datenfeld eintragen

    Me(Datenfeld) = Choose(optOptionsgruppe.Value, "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag")

End Sub

Die Prozedur ermittelt zunächst über die Tag-Eigenschaft das Datenfeld, in der die Wochentage untergebracht werden sollen. Anschließend wird der passende Wochentag gemäß der ausgewählten Option eingetragen.

Was nun noch fehlt, ist eine Ereignisprozedur, die die richtige Option bei der Auswahl eines neuen Datensatzes markiert. Dies Aufgabe übernimmt folgende Ereignisprozedur, die an die BeimAnzeigen-Ereigniseigenschaft des Formulars geknüpft ist:

Private Sub Form_Current()

    Dim Datenfeld As String
    'Wird gerade der neue Datensatz angezeigt
    If Me.NewRecord = True Then
        'Wenn ja, dann abbrechen
        optOptionsgruppe.Value = Null
        Exit Sub
    End If

    'Name des Datenfeldes ermitteln
    Datenfeld = optOptionsgruppe.Tag

   'Richtige Option auswählen
   Select Case Me(Datenfeld)
        Case "Montag":     optOptionsgruppe.Value = 1
        Case "Dienstag":   optOptionsgruppe.Value = 2
        Case "Mittwoch":   optOptionsgruppe.Value = 3
        Case "Donnerstag": optOptionsgruppe.Value = 4
        Case "Freitag":    optOptionsgruppe.Value = 5
        Case "Samstag":    optOptionsgruppe.Value = 6
        Case "Sonntag":    optOptionsgruppe.Value = 7
        Case Else:         optOptionsgruppe.Value = Null
    End Select

End Sub

Dienstleistungen

Als starker Partner an Ihrer Seite unterstützen wir Sie in folgenden Breichen:

Access-Programmierung

Benötigen Sie Unterstützung bei der Programmierung von Access-Anwendungen? Wir bieten die gesamte Bandbreite von der Access-Programmierung auf Stundenbasis bis zur Durchführung eines Software-Projektes als Auftragsarbeit an. Kontaktieren Sie uns für ein kostenloses Erstgespräch.

Software-Beratung

Haben Sie ein Software-Projekt und Sie wissen nicht, ob Access die richtige Plattform ist? Wir haben über 20 Jahre Erfahrung beim Erstellen von Windows-, Web und mobilen Anwendungen. Kontaktieren Sie uns für eine kostenlose Erstberatung.