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
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...
ich hab' vergessen, den Code als solchen zu formatieren...

