-1
2つのMainWindowフォーム(管理者用とユーザ用)の2つのMS Accessデータベースアプリケーションを作成しました。このデータベースでは、テーブルを作成し、tbl_Usersを追加してUserLoginとパスワードをadminとuserに追加します。この表では、管理者または共通のユーザーであると判断できる列があります。VBAでログインコードを作成するには?
我々は管理者のログインフォームを開き、ユーザーのuserloginのと管理者のパスワードを入力すると、我々は、(それぞれに固有のuserloginのとパスワード付き)adminとtbl_usersでユーザーを持っている場合MainWindowが開き、「LoginIdまたはPasswordが正しくありません」というメッセージが表示されません。何が問題ですか?あなたは1つのコールだけ必要
Option Compare Database
Private Sub Command1_Click()
Dim userlevel As Integer
If IsNull(Me.txtLoginID) Then
MsgBox "please insert ID", vbInformation, "LoginID required"
Me.txtLoginID.SetFocus
ElseIf IsNull(Me.txtPassword) Then
MsgBox "Please inter Password", vbInformation, "Password required"
Me.txtPassword.SetFocus
Else
'process the job
If (IsNull(DLookup("UserLogin", "tbl_Users", "UserLogin ='" & Me.txtLoginID.Value & "'"))) Or _
(IsNull(DLookup("Password", "tbl_Users", "Password ='" & Me.txtPassword.Value & "'"))) Then
MsgBox "Incorrect LoginId or Password"
Else
userlevel = DLookup("UserSecurity", "tbl_users", "userLogin = '" & Me.txtLoginID.Value & "'")
DoCmd.Close
If userlevel = 1 Then
'msgbox "LoginID and Password correct"
DoCmd.OpenForm "MainForm_final_admin"
Else
DoCmd.OpenForm "MainForm_final_user"
End If
End If
End If
End Sub
が上の場所のコンパイラエラー取る "ケースがNULLである":予想:=または<>または>または<=または= < –
user8344677
私が」に変更しましたCase Is Null "を" Case Is = Null "に変更しましたが、最初の問題はまだあります。 – user8344677
あなたはそうです、あなたはそのように_Null_をチェックすることはできません。 NzをNullを-1のような存在しないユーザレベルに変換するには、編集された答えを参照してください。 – Gustav