VIDTAKER.COM

Q&A

MS Accessの"実行時エラーは2001年、あなたは前の操作"をキャンセル? - ビジュアル基礎4 / 5 / 6回答


こんにちは、実際に私は学校でいくつかの授業のためのデータベースを作成しています。基本的には予約システムだけだとどのように私は本のハードウェアとハードウェアを必要とする学生のための学校のうち。教師はログインできるように、システムを私はログイン画面を作成するために、試みた。私は'tblTechnicianFileこのコードで関与している1つのテーブルを持っている。それは同様に技術者のIDとパスワードを格納するテーブルです。以下のリンクは私のtblTechnicianFile私のログイン画面が表示される印刷画面と私の実際のフォーム、です。
http://i209.photobucket.com/albums/bb68/ud1992/ms%の20accessの%20prob/Untitled-2.png
http://i209.photobucket.com/albums/bb68/ud1992/ms%の20accessの%20prob/Untitled-4.png

問題は、それが別の画面のパスワードが正しいことに私を送ることになっているが、それは私に"実行時エラーを与え続けて..."画面かどうか私は正しいパスワードかどうかに入れる。

これは私が入力持っているすべてのコードは、何かが間違っている必要がありますが、私はそれを見つけることができません。ヘルプ。



オプションはデータベースの比較

プライベートサブcboEmployee_AfterUpdate()

Me.txtPassword.SetFocus

End Subの


プライベートサブcmdLogin_Click()

のデータは、ユーザー名コンボボックスに入力されたかどうかをチェックする

のISNULL(Me.cboEmployee)の場合またはMe.cboEmployee =""その後、
MsgBoxには、"あなたはユーザ名を入力する必要があります。"vbOKOnly、"必要なデータ"
Me.cboEmployee.SetFocus
終了サブ
エンド場合

のデータは、パスワードボックスに入力されたかどうかをチェックする

のISNULL(Me.txtPassword)の場合またはMe.txtPassword =""その後、
MsgBoxには、"あなたはパスワードを入力する必要があります。"vbOKOnly、"必要なデータ"
Me.txtPassword.SetFocus
終了サブ
エンド場合

ログイン時にパスワードのチェック'値は、このかどうかを
'値をコンボボックスで選択と一致する

場合Me.txtPassword.Value = DLookup("パスワード"、"tblTechnicianFile"、_
"[技術者は、="]のID&Me.cboEmployee.Value)次に、

lngMyEmpID = Me.cboEmployee.Value

[閉じるのログオンフォームと開いているスプラッシュスクリーン

DoCmd.CloseのacForm、"ログイン画面の先"、acSaveNo
DoCmd.OpenFormメソッド"スイッチ"

エルス
します。MsgBox"パスワードが無効です。もう一度"、vbOKOnly、_をお試しください
"無効なエントリ!"
Me.txtPassword.SetFocus
エンド場合

'場合は、ユーザ開始間違ったパスワードを3回データベースは、シャットダウン

intLogonAttempts = + 1 intLogonAttempts
その後、3> intLogonAttempts場合
MsgBoxには、"あなたはこのdatabase.Pleaseの連絡先管理へのアクセスを持っていない。"、_
vbCritical、"制限付きアクセス!"
Application.Quitを
エンド場合

End Subの

-------------------------------------------------- -------------------------------------------------- -----------
その他の詳細
誰も私は、この問題またはそのような何かについての詳細を得るために連絡したい場合は、私のMSNは:uddeshd@yahoo.co.uk



5 Replies

1)

ハイ

ちょうど1つの提案: -

スイッチ'を開いて'前を閉じてみてください'ログイン画面'

??


マウンテンバイク

2)

えーと、私は本当にあなたは...意味わからないあなたはコード、またはスイッチボード]フォームを開いて編集すると言うのですか?

私は本当に良いコーディングではないとして、コードを編集すると、私に新しいコードをしてください。与えることができる、という場合。

私はウェブサイトのフォームからこのログインする手順を上の方法をコーディングがこれら: http://www.databasedev.co.uk/login.html

IDはオートナンバー型フィールドの場合は、鉱山は、テキストの1つですが、どうやらそのコードは動作します。それがどのような問題を引き起こしている、彼はオートナンバー型としての彼のTechnicianIDフィールドがあったのでそれは見事に私の友人のために、働いている。

ありがとう。

3)

ハイ

お持ちの[OK]をように、テキストのユーザーID(なぜ?)し、私はこの変更をご提案
  1. If Me.txtPassword.Value = DLookup("Password", "tblTechnicianFile", _
  2. "[Technician ID]=" & Me.cboEmployee.Value) Then
これに
  1. If Me.txtPassword.Value = DLookup("Password", "tblTechnicianFile", _
  2. "[Technician ID]='" & Me.cboEmployee.Value & "'") Then
番目のapostrophiesをMe.cboEmployee.Valueを囲む注意してください

プログラムは、変数のテキストが起動し、プログラムのテキスト内の終了を知っているので、これらの区切り記号は、すべてのテキスト変数のこのような状況で必要とされます。

HTH返答


マウンテンバイク

4)

おかげで多くの仲間、それは働いた。しかし、現在の問題は最後のコードです

引用:
'場合は、ユーザ開始間違ったパスワードを3回データベースは、シャットダウン

intLogonAttempts = + 1 intLogonAttempts
その後、3> intLogonAttempts場合
MsgBoxには、"あなたはこのdatabase.Pleaseの連絡先管理へのアクセスを持っていない。"、_
vbCritical、"制限付きアクセス!"
Application.Quitを
エンド場合
このコードはであることをチェック間違ったパスワードを3回以上..入力されている場合私は間違ったパスワードを入力して3倍以上を試みたが、動作しなかった場合は、このビットでも私を助けることができる場合apreciate希望ですか?ありがとうございます。

5)

ハイ

2つのこと
1)あなたが実際に起こるとは言いません
2)どこintLogonAttempts'は宣言された変数は何ですか?

私はtemperarilyこの行を追加します起動するには

MsgBoxには、intLogonAttempts

この行、すぐ後に

intLogonAttempts = + 1 intLogonAttempts

それは1とインデックス位置にある各incorrctパスワードで起動する場合参照してください。

'intLogonAttempts'は、フォームの上部にあるログイン画面'コードモジュールすなわち宣言する必要があります。

点心は、整数としてintLogonAttempts


マウンテンバイク