Suche…


Bemerkungen

Durch diesen Code wird die Möglichkeit deaktiviert, dass ein Benutzer beim Öffnen einer Datenbank die Umschalttaste gedrückt hält, um das Öffnen des Standardformulars zu überspringen und dem Benutzer Zugriff auf den Navigationsbereich und den VB-Editor zu gewähren. In Datenbanken, in denen die Benutzer keinen Zugriff darauf haben sollen (zusammen mit der Deaktivierung der Verwendung von Sonderschlüsseln in den aktuellen Datenbankoptionen), hilft dieser Code, die Datenbank gesperrt zu halten.

Im Allgemeinen befindet sich der folgende Code in einem eigenen Modul, das als basEnableDisableShift-Modul bezeichnet werden kann. Dies ist jedoch nur ein Vorschlag, und Sie können ihn in ein beliebiges Modul einfügen, das Sie möglicherweise bereits haben.

Um die Umschalttaste zu deaktivieren, geben Sie in Ihrem VB-Editor-Bildschirm in Ihrem Direktfenster 'DisableShift' ein und drücken Sie die Eingabetaste. Sie erhalten dann eine Meldung, die Sie darüber informiert, dass die Umschalttaste deaktiviert wurde.

Um die Umschalttaste erneut zu aktivieren, müssen Sie erneut zum VB-Editor-Bildschirm zurückkehren, geben Sie 'EnableShift' in Ihr Direktfenster ein und drücken Sie die Eingabetaste. Sie erhalten erneut eine Nachricht in Ihrem Direktfenster, in der Sie darüber informiert werden, dass die Umschalttaste aktiviert wurde.

ANMERKUNG: Dies ist keine narrensichere Methode zum Aktivieren und Deaktivieren der Umschalttaste. Wenn Sie jedoch eine Datenbank für Benutzer bereitstellen, die nicht mit MS Access und VBA vertraut sind, sollte dies hilfreich sein, um zu verhindern, dass Benutzer auf den VB-Editor und / oder oder Navigationsbereich in Ihrer Datenbank.

Deaktivieren Sie den Shift-Funktionscode

Function DisableShift()
'This function disable the shift at startup. This action causes
'the Autoexec macro and Startup properties to always be executed.

On Error GoTo errDisableShift

    Dim db As DAO.Database
    Dim prop As DAO.Property
    Const conPropNotFound = 3270

    Set db = CurrentDb()

    'This next line disables the shift key on startup.
    db.Properties("AllowByPassKey") = False

    'The function is successful.
    Debug.Print "Disabled Shift Key - Successful"
    Exit Function

errDisableShift:
    'The first part of this error routine creates the "AllowByPassKey
    'property if it does not exist.
    If Err = conPropNotFound Then
        Set prop = db.CreateProperty("AllowByPassKey", _
        dbBoolean, False)
        db.Properties.Append prop
        Resume Next
        Else
            MsgBox "Function 'ap_DisableShift' did not complete successfully."
            GoTo ExitHere
    End If

ExitHere:
    Set prop = Nothing
    Set db = Nothing
    Exit Function

End Function

Aktivieren Sie den Shift-Funktionscode

Function EnableShift()
'This function enables the SHIFT key at startup. This action causes
'the Autoexec macro and the Startup properties to be bypassed
'if the user holds down the SHIFT key when the user opens the database.

On Error GoTo errEnableShift

    Dim db As DAO.Database
    Dim prop As DAO.Property
    Const conPropNotFound = 3270

    Set db = CurrentDb()

    'This next line of code disables the SHIFT key on startup.
    db.Properties("AllowByPassKey") = True

    'function successful
    Debug.Print "Enabled Shift Key - Successful"
    GoTo ExitHere

errEnableShift:
    'The first part of this error routine creates the "AllowByPassKey
    'property if it does not exist.
    If Err = conPropNotFound Then
        Set prop = db.CreateProperty("AllowByPassKey", _
        dbBoolean, True)
        db.Properties.Append prop
        Resume Next
        Else
            MsgBox "Function 'ap_DisableShift' did not complete successfully."
            GoTo ExitHere
    End If

ExitHere:
    Set prop = Nothing
    Set db = Nothing
    Exit Function

End Function


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow