マイクロソフト社のAccessのお話です。
Accessはバージョンに関わらず、基本「SHIFT」+「ENTER」もしくは、「SHIFT」+「ダブルクリック」で開発モードが開きます。
ただし、予め対策をされていると開けません。結構ハマったのでメモします。
Accessで開発モードで作成した後に、「AllowBypassKey」を有効にされると普通の方法では開けなくなります。
「AllowBypassKey」を無効にする必要があるからです。
しかし、「AllowBypassKey」を無効にする為には、まず開発モード画面を開く必要があるのですが。。。。
(卵が先か、鶏が先か。。。。)
そこで調べた結果ですが、「AllowBypassKey」を無効化する為のmdbファイルもしくはaccdbファイルを別途作成します。
別途作成したファイルの標準モジュールで「AllowBypassKey」の無効化を書きます。
【標準モジュールの記述例をテキストでも載せておきます】
Option Compare Database
Const APath = “C:\APP\ああああシステム.accdb”‘ここに解除したいAccessファイルのフルパスを記述します。
Function ChangeProperty(strPropName As String, varPropType, _
varPropValue) As Boolean
On Error GoTo エラー
Dim dbs As Database, prp As Property
Const conPropNotFoundError = 3270
Set dbs = OpenDatabase(APath)
dbs.Properties(strPropName) = varPropValue
ChangeProperty = True
dbs.Close
Exit Function
エラー:
If Err = conPropNotFoundError Then
Set prp = dbs.CreateProperty(strPropName, varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
ChangeProperty = False
dbs.Close
Exit Function
End If
End Function
Sub NoShiftKey()
If ChangeProperty(“AllowBypassKey”, dbBoolean, True) Then
MsgBox APath & ” 解除しました。”
Else
MsgBox APath & ” 失敗しました。”
End If
End Sub