Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

How do I resolve the error "Run time error '2001': You canceled the previous operation" in an Access 2003 application?

Posted on 2013-06-27
1
615 Views
Last Modified: 2013-06-27
I am developing an Access 2003 application using VBA code.
For my log on screen, I use a combobox control for the userID,
a text box to enter a password and a submit command button to validate the
values.

the tblUserSecurity1 table has the following fields:
primary key    recordnum             AutoNumber
                              userID                     Text
                              securityLevel        Text
                              password                Text  

The combox displays the userID but is based on the following Row source:
SELECT tblUserSecurity1.recordnum, tblUserSecurity1.userID FROM tblUserSecurity1 ORDER BY [userID];  

My log on FORM code is as follows:
After the Login ID and password are entered, the following error occurs:

Run time error '2001':
You canceled the previous operation.

The system stops at the line:
strUSERRIGHTS = DLookup("secLevel", "tblUserSecurity1", "[recordnum]=" & Me.Combo25.Value)
---------------------------------------------------------------------------------------------

 If IsNull(Me.Combo25) Or Me.Combo25 = "" Then
       MsgBox "You must enter a valid login ID.", vbOKOnly, "Required Data"
       Me.Combo25.SetFocus
       Exit Sub
    End If
   
    'Check to see if data is entered into the password box
   
    If IsNull(Me.TxtPwd) Or Me.TxtPwd = "" Then
       MsgBox "You must enter a Password", vbOKOnly, "Required Data"
       Me.TxtPwd.SetFocus
       Exit Sub
    End If
   
    If Me.TxtPwd.Value = DLookup("PASSWORD", "tblUserSecurity1", "[recordnum]=" & Me.Combo25.Value) Then
       strUSER = DLookup("UserID", "tblUserSecurity1", "[recordnum]=" & Me.Combo25.Value)
       strUSERRIGHTS = DLookup("secLevel", "tblUserSecurity1", "[recordnum]=" & Me.Combo25.Value)
       'USERRIGHTSM = strUSERRIGHTS
       'DoCmd.Close acForm, "frmLogon", acSaveNo
       'DoCmd.OpenForm "frmCustomRpt"
       
    Else
       MsgBox "Password Invalid. Please Try Again", vbOKOnly, "Invalid Entry!"
       Me.TxtPwd.SetFocus
    End If
   
    intLogonAttempts = intLogonAttempts + 1
    If intLogonAttempts > 3 Then
       MsgBox "You do not have access to this database.Please contact admin.", vbCritical, "Restricted Access!"
       Application.Quit
    End If
0
Comment
Question by:zimmer9
1 Comment
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 500 total points
ID: 39283497
you mentioned "securityLevel" is the name of the field,

you are using "secLevel" in this line

strUSERRIGHTS = DLookup("secLevel", "tblUserSecurity1", "[recordnum]=" & Me.Combo25.Value)

try

strUSERRIGHTS = DLookup("securityLevel", "tblUserSecurity1", "[recordnum]=" & Me.Combo25.Value)
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When you are entering numbers in a speadsheet, and don't remember what 6×7 is, you just type “=6*7" instead. It works in every cell! This is not so in Access. To enter the elusive 42 in a text box, you have to find a calculator, and then copy the re…
Phishing attempts can come in all forms, shapes and sizes. No matter how familiar you think you are with them, always remember to take extra precaution when opening an email with attachments or links.
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question