access-vba
Shift-toets inschakelen / uitschakelen bij DB Open
Zoeken…
Opmerkingen
Deze code schakelt de mogelijkheid uit voor een gebruiker om de Shift-toets ingedrukt te houden bij het openen van een database om de standaardformulieropening over te slaan en de gebruiker toegang te geven tot het navigatiedeelvenster en de VB-editor. In DB's waarvan u niet wilt dat gebruikers hier toegang toe hebben (samen met het uitschakelen van het gebruik van speciale sleutels in de huidige database-opties), helpt deze code de database vergrendeld te houden.
Over het algemeen wordt de onderstaande code in een eigen module geplaatst die basEnableDisableShift-module kan worden genoemd, maar dit is slechts een suggestie en u kunt deze in elke module plaatsen die u mogelijk al hebt.
Om de Shift-toets uit te schakelen, voert u in uw VB-editorscherm 'DisableShift' in uw directe venster in en drukt u op Enter. U ontvangt vervolgens een bericht met de melding dat de Shift-toets is uitgeschakeld.
Om de Shift-toets opnieuw in te schakelen, moet u opnieuw terugkeren naar het scherm VB-editor, voer 'EnableShift' in uw directe venster in en druk op Enter. U ontvangt opnieuw een bericht in uw directe venster waarin wordt gemeld dat de Shift Key is ingeschakeld.
OPMERKING: Dit is geen onfeilbare manier om de Shift Key in en uit te schakelen, maar als u een database implementeert voor gebruikers die niet bekend zijn met MS Access en VBA, zou het nuttig kunnen zijn om te voorkomen dat gebruikers toegang krijgen tot de VB Editor en / of navigatiedeelvenster in uw database.
Schakel de Shift-functiecode uit
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
Schakel Shift-functiecode in
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