サーチ…


備考

このコードでは、データベースを開いてデフォルトのフォームをスキップし、ナビゲーションペインとVBエディタにユーザーがアクセスできるようにするためにShiftキーを押したままにする機能をオフにします。 DBでは、ユーザーがこれらのいずれかにアクセスすることを望まない(現在のデータベースオプションで特殊キーの使用を無効にすると同時に)、このコードはデータベースをロックダウンするのに役立ちます。

一般的に、以下のコードは、basEnableDisableShiftモジュールという名前の独自のモジュールに配置されていますが、これは単なる提案にすぎず、既存のモジュールに配置することができます。

Shiftキーを無効にするには、VB Editorの画面でイミディエイトウィンドウ内に 'DisableShift'と入力してEnterキーを押します。 Shiftキーが無効になっていることを知らせるメッセージが表示されます。

Shiftキーを再び有効にするには、もう一度VB Editor画面に戻り、イミディエイトウィンドウ内で「EnableShift」と入力してEnterキーを押します。 Shiftキーが有効になっていることを通知するメッセージがイミディエイトウィンドウに再度表示されます。

注:これはShiftキーを有効または無効にするための偽の方法ではありませんが、MS AccessおよびVBAに習熟していないユーザーにデータベースを展開する場合は、ユーザーがVB Editorにアクセスできないようにする、またはナビゲーションペインをクリックします。

シフト機能コードを無効にする

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

シフトファンクションコードを有効にする

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
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow