Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Access Felder per "Häckchenfeld" Inaktiv machen





Frage

Servus Access Meister! Folgendes Problem habe ich bei Access: Ich habe ein Formular, in dem einige Felder gesperrt sein sollen, wenn ich in ein "Häkchenfeld" aktiviere. Folgenden Code habe ich schon gebastelt: [i] Private Sub Inakitv_Click() If Me.inAkitv = True Then Me.Vorname.Locked = True Me.Vorname.Enabled = False Me.Vorname.BackColor = -2147483633 Else Me.Vorname.Locked = False Me.Vorname.Enabled = True Me.Vorname.BackColor = 16777215 End If [/i] Leider habe ich hiermit das Problem, dass wenn ich einen Datensatz anklicke, das Feld in allen anderen Datensätzen auch gesperrt ist.... Muss ich mit Recordsets arbeiten? Wie kann ich nur den einzelnen Datensatz, der gerade aktiv ist, ansprechen? Vielen Dank für Eure Hilfe im voraus & viel Spass beim basteln :-) Birdy76

Antwort 1 von firefox

Muss ich mit Recordsets arbeiten?
Das tust du schon - oder zumindest Access für dich ;)

Hast du ein normales Formular? Dann mußt die Prüfung eigentlich nur noch bei jedem Datensatzwechsel machen.

Müsste Form_Current() sein...

Antwort 2 von Birdy76

Hi,

da macht Access schon wieder mehr als ich dachte :-)

Das Formular is "normal" :-). Ein Formular, in dem alle Felder aus einer Tabelle kommen, kein Unterformular oder sonst was spezielles drin...

Ähm... eine Frage noch!

Wie nutze ich das Form_Current ?

Mit

Private Sub Form_Current()

If Me.inAkitv = True Then
Me.Vorname.Locked = True
Me.Vorname.Enabled = False
Me.Vorname.BackColor = -2147483633
Else
Me.Vorname.Locked = False
Me.Vorname.Enabled = True
Me.Vorname.BackColor = 16777215
End If
End Sub


ist das Feld immer zu... :-( Egal, ob ich in das Feld inAktiv den Haken setze oder nicht...

VBA ist leider nicht so ganz meine Welt...

Danke!

Antwort 3 von firefox

Hm,
me.inAkitv bezieht sich auch auf ein Wert in der Tabelle? Also ist inAktiv ein Tabellenfeld? Schon mal geprüft ob der Wert auch korrekt ist per Debuggen.

Oder ist das ungebunden? ... Dann würde das so nicht funktionieren.

Antwort 4 von Birdy76

Hi,

inAktiv ist der Name von einem Ja/Nein Feld in der Tabelle, wo auch alle anderen Daten festgelegt sind. Zu jedem Datensatz gibt es ein solches Feld.

Trotzdem habe ich halt das Problem, dass sich die Sperrung auf die Tabelle und nicht auf den Datensatz legt...

Noch eine Idee? Ich leider nicht mehr...

Danke!