Tipp 2.4 - Controls de- bzw. aktivieren
Wie kann ich alle Controls eines Formulares aktivieren bzw. deaktivieren?
Mit dieser Funktion können Sie alle Steuerelemente eines Formulares aktivieren bzw. deaktivieren. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.
Hinweis: Durch spezielle Anweisungen können Sie diese Funktion erst ab Access 2000 einsetzen.
Beispiel:
Option Explicit Public Enum eFrmSection fsFrmDetail = 0 fsFrmHeader = 1 fsFrmFooter = 2 fsPageHeader = 3 fsPageFooter = 4 End Enum Public Sub A2XCtlEnableDisable( _ psForm As String, _ peSection As eFrmSection, _ pbEnable As Boolean) '// ===================================================== '// Methode | Aktiviert bzw. deaktiviert alle Controls '// | eines Formulares '// ----------------------------------------------------- '// Parameter | psForm - Name des Formulars '// | peSection - Bereich des Formulars '// | Das Enum eFrmSection sollte '// | vorab auf Modulebene '// | deklariert sein! '// | pbEnable - True = aktivieren '// | False = deaktivieren '// ----------------------------------------------------- '// Erstellt | Manuela Kulpa '// | EDV Innovation & Consulting - Dormagen '// ----------------------------------------------------- '// Beispielaufruf: '// Private Sub Form_Open(Cancel As Integer) '// '// Call A2XCtlEnableDisable(CStr(Me.Name), _ '// fsFrmDetail, _ '// False) '// End Sub '// ===================================================== On Error GoTo HandleErr Dim frm As Form Dim ctl As Control Set frm = Forms(psForm) For Each ctl In frm.Controls If ctl.Section = peSection Then On Error Resume Next ctl.Enabled = pbEnable On Error GoTo HandleErr End If Next ctl HandleExit: Exit Sub HandleErr: Select Case Err.Number Case Else MsgBox "Fehler " & Err.Number & ": " & _ Err.Description, vbCritical, _ "basFrm.A2XCtlEnableDisable" End Select Resume HandleExit End Sub