2016-05-06 23 views
0

データベースが起動時に特定のフォームに開き、ユーザー名をチェックし、VBAでコード化されたものと一致しない場合は、情報を収集し、それらをデータベースから取り出す。Environ( "Username")に基づいてデータベースへのアクセスを制限する

私の質問は、現在のユーザー-Environ( "USERNAME")がテーブルのいくつかのセルの1つと一致するかどうかをチェックし、その結果に基づいてコードを実行することができます。

テーブル名は「AccessListing」で、行「IDNUM」には少数のメンバーUSERNAMEが含まれています。

私の推論は私がいつも自分の立場で働いているわけではないので、私はそれを馬鹿な証拠にしようとしています。私が去るとき、この方法で、次の人はそれをジャックアップしません。

+1

回答に重複するリンクをたどるときは、特に、その質問の最初のコメントと受け入れられた回答に注意してください。Accessデータベースのセキュリティなどはありません。そして、あなたは決して環境変数を信用すべきではありません。 – Leviathan

+0

Environ( "USERNAME")より良い方法は 'CreateObject(" WScript.Network ")。UserName'です。http://stackoverflow.com/q/34352511/3820271を参照してください。 – Andre

答えて

0
if Dcount("IDNUM","AccessListing","IDNUM = '" & Environ("USERNAME") & "'") > 0 then 
'do something when user is in list 
else 
'do something when user not in list 
endif 

ENVIRON( "USERNAME")は安全ではないことに注意してください、それが操作することができます!

関連する問題