Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Aktivieren aller Textfelder im Detailbereich mittels VBA ?





Frage

Wie kann ich mit einer VBA-Routine alle Textfelder im Detailbereich meines Formulares aktivieren bzw. deaktivieren ? Gruß computerfreund

Antwort 1 von DatenKay

Antwort:
Hi Computerfreund,

das kleine Beispiel weiter unten dürfte Dein Problem lösen...
Die Funktion wertet die ControlType-Eigenschaft für alle Steuerelemente
im Detailbereich eines Formulars (Frm) aus und setzt die Eigenschaft "enabled" aller Textfelder auf True bzw. False. Beim Funktionsaufruf muss der Formularname übergeben werden: ToggleControlProperty Forms![Formularname]


Public Function ToggleControlProperty(Frm As Form)
Dim ctrl As Control
Dim a As Integer
Dim Status As String
a = 0
For Each ctrl In Frm.Section(acDetail).Controls
With ctrl
Select Case .ControlType
Case acTextBox
If .Enabled = True Then
.Enabled = False
Status = "deaktiviert"
Else
.Enabled = True
Status = "aktiviert"
End If
a = a + 1
End Select
End With
Next ctrl
MsgBox "Es wurden " & a & " Textfelder " & Status & " !"
End Function


Das geht natürlich analog auch mit anderen Formularobjekten und anderen Eigenschaften. Mehr darüber kannst Du in der Access VB-Hilfe unter dem Stichwort "ControlType-Eigenschaft" und "Section-Eigenschaft" finden.

Gruß,
DatenKay


Antwort 2 von DatenKay

Sorry,
ich hab' vergessen, den Code als solchen zu formatieren...