Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 357
  • Last Modified:

Form automatically going into Edit mode right away

On my form, I have a UserName combo box that is the first field to receive the focus when the form opens.  The default value is set to "=UsersFormalName()" from the function below.

The problem is that the record goes right into Edit mode (the little pencil in the upper left corner) as soon as the form is opened or a "new" record is added.  Normally the mode would remain in "view" until user starts typing in a field (the little triangle in the upper left corner).

How can I stop the New record from going right into Edit mode but still have the UserName combo be the first field selected when the form is opened?  Ideally I would like the Edit to start when the user tabs away from the field or selects another name from the combo.

Public Function UsersFormalName()
     'DATABASE CONTAINS TABLE T_PEOPLE
     
On Error GoTo ErrorHandler_Err
     
     Dim db As Database
         Dim rst As DAO.Recordset
         Dim strSQL As String
         Set db = CurrentDb

strSQL = "SELECT tbl_People.PeopleName " & _
"FROM tbl_People " & _
"WHERE (((tbl_People.UserName)=fGetUserName()));"

      Set rst = db.OpenRecordset(strSQL)

      UsersFormalName = rst.Fields("PeopleName").Value 
     
Set rst = Nothing                   

'Error Handling-----------------
ErrorHandler_Err_Exit:
530      Exit Function
ErrorHandler_Err:
Select Case Err
Case 3059
Resume Next
'Case Else

'ErrorDetails = ErrorHandler(FormName:=FormNameConstant, ProcedureName:=ProcedureName, _
        ErrNumber:=Err.Number, ErrDescription:=Err.Description, ErrLine:=Erl)
End Select

End Function

Open in new window

0
SheaJeff
Asked:
SheaJeff
  • 2
1 Solution
 
peter57rCommented:
I don't think Edit mode is being produced by your default value function.
There must be something else going on.

How are you opening the form?  If in code can you post the code.
Is there any code/macro in the form Load or Form Current event procedures?
0
 
SheaJeffAuthor Commented:
I've added break/watch points to all of the form events, but still can't find what's causing it.
One thing that might help; if I have 2 or more records, and select the UserName field, then try to go to another record, the form goes right into Edit mode for the CURRENT record that I'm trying to move from.  If I select any other field, the form moves between records normally.

I do have this for the field, and it was working fine before I added the default value.
     Private Sub cmbo_UserName_GotFocus()
     Me.cmbo_UserName.Dropdown
     End Sub

On Enter and Exit events I use these functions to highlight the cell.  It's worked fine forever so I can't imagine it is interfering
     
Sub Highlight()
    With Me.ActiveControl
        .Properties("BackColor") = 9434879
     End With
End Sub
Sub Un_Highlight()
    Me.ActiveControl.Properties("BackColor") = 16777215
End Sub
0
 
DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform)Commented:
As Peter eluded to ... if you have any code in the Form Current that sets a Control  Value, this will immediately make a record Dirty (ie in Edit mode).  Look for that.  Same would apply to the On Enter - On Got Focus event for a control first in the tab order, ... and you set a value .

mx
0
 
SheaJeffAuthor Commented:
Peter, you were right.
I had an additional line on the OnExit event of the combo box besides the UnHighlight.

'Me.cmb_AcctNumber.Value = AcctIDdefault
0

Featured Post

Fill in the form and get your FREE NFR key NOW!

Veeam is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now