私はAccess Projectに取り組んでいますが、この質問にはAccessに固有のものは何もないと思います.
私はフォームを持っていますが、認証されたユーザーのテーブルにいる場合にのみ開くことができます (そして、私は彼の Windows ユーザー名でユーザーを認証します) - 私はそれが不十分な認証であることを知っています.
フォームのオープンイベントに入れたコードは次のとおりです。
Private Sub Form_Open(Cancel As Integer)
If DCount("User_Id", "Users", "[username]='" & (Environ$("Username")) & "'") Then
Else
MsgBox "Access Denied!"
DoCmd.Quit
End If
End Sub
私が達成したいのは、MsgBox "Access Denied!"
が表示されたときに、[OK]ボタンをクリックする前に特定の単語(パスワードなど)を入力すると、それDoCmd.Quit
が実行されないことです。何も表示したくありません。パスワードを入力するだけです。
必死に必要というわけではなく、ただ楽しく作りたいだけです。それがVBAでできたらすごいなと思います。