Form Field Validation - "Cancel = True" Problem

Feb 21, 2005

I'm calling this code on my Form's BeforeUpdate Event which I understand should only run if the form is dirty. In this example, the code should check to see if 4 fields ("txtField1", "txtField2", txtField3", "txtField4") have data present, if not highlight them yellow.

Function Msg()
Dim ctl As Control
Dim strFields As String
Dim strControl As String
Dim intCounter As Integer
Dim blnEmpty As Boolean

For Each ctl In Me.Controls
blnEmpty = False
If ctl.ControlType = acComboBox Or acTextBox Then
If ctl.Visible And Len(ctl.Tag) > 0 Then
Select Case ctl.Tag
Case "txtField1", "txtField2", txtField3", "txtField4"
If IsNull(ctl.Value) Then
blnEmpty = True
ctl.BackColor = vbYellow
Else
ctl.BackColor = vbWhite
End If
Case Else
If ctl.Value = 0 Then
blnEmpty = True
ctl.BackColor = vbYellow
Else
ctl.BackColor = vbWhite
End If
End Select
If blnEmpty Then _
strFields = strFields & ctl.Tag & vbCrLf
If blnEmpty Then _
If Len(strControl) = 0 Then _
strControl = ctl.Name
End If
End If
Next

If Len(strFields) > 0 Then
Cancel = True
MsgBox "You have not completed all data fields, " & _
"please enter data in the following fields:" & vbCrLf & strFields, _
vbExclamation, Me.Caption
Me(strControl).SetFocus
Me(strControl).BackColor = vbWhite
Exit Function
End If
End Function

However, it keeps falling over at:
Cancel = True saying "Compile Error: Variable Not Defined"

I want to be able to run this code from a "Close Form button" to ensure that either the record is not created unless the fields listed are filled in or the form closure is cancelled so that the user can complete the missing data.

I've seen varients of this code on a couple of Access forums but can't find a solution for the "Cancel = True" issue.

Am I doing something wrong?

View Replies


ADVERTISEMENT

Cancel Validation Rule Message Boxes On Closing Form

Oct 26, 2006

I want to close a form and I am using

Private Sub Form_Close()
Application.Quit
End Sub

as the form opens with the access application window hidden, and I found that the .ldb file didn't close if I simply used the X.

I have a series of fields with validation rules which activate on exit. One of these validation rules is in the box which gets focus when the form opens. This means that I get the validation text error message boxes when I close the form with the X.

If I have started to complete the form, I get a whole host of error messages and validation messages when I try to shut it with the X.

Is there a way of closing the form and cancelling or ignoring all error message boxes. I want the user to be able to close the form if they have decided not to fill it in after all, or have got part way through and want to cancel.

I would really appreciate any help, I am sure this is a very basic question and I should probably be able to find the answer, but I can't and I am very fed up!

View 2 Replies View Related

Cancel Adding New Record If Condition Is True

Oct 11, 2007

Hi

I wrote code that should validate a field when entering a new record and then if a condition is true, that new record should be cancelled and not entered into the table.

I managed to partially achieve this by writing the code below, but the new record does not get cancelled because the table will still create a PK for that record and leave the rest of the fields empty. I am using an autonumber for the PK that's why the table creates it automatically What I want to achieve is to cancel the creation of a new record at once, I don't want even PK created for that new record.

I used the CancelUpdate because I thought it would cancel the record creation, but it did not! When I read about it it said that I need to use it with either Edit or AddNew, (which i don't understand why!) but it still does not work.

Private Sub PlotNum_BeforeUpdate(Cancel As Integer)
On Error GoTo Err_msg
Dim db As DAO.Database, rs As DAO.Recordset
Dim n As Integer, i As Integer
Dim vPlotNum As Integer
Dim vPhaseID As Integer

vPhaseID = Forms![frmHouse].Form![PhaseID]
vPlotNum = Forms![frmHouse].[qryHouse2].Form![PlotNum]

Set db = CurrentDb
Set rs = db.OpenRecordset("tblHouse")
rs.MoveLast
n = rs.RecordCount
rs.MoveFirst
If n > 0 Then
For i = 1 To n
If rs![PhaseID] = vPhaseID Then
If rs![PlotNum] = vPlotNum Then
rs.Edit
rs.CancelUpdate
MsgBox "This plot number already exist in this particular phase." & vbCrLf & "Please choose a different Plot Number"
Forms![frmHouse].qryHouse2.Form![PlotNum].Text = ""
End If
End If
rs.MoveNext
Next i
End If
rs.Close
db.Close
Set db = Nothing
Set rs = Nothing

Exit_Err_msg:
Exit Sub

Err_msg:
MsgBox Err.Description
Resume Exit_Err_msg
End Sub


Any suggestions will be very much appreciated.
Thanks.
B

View 14 Replies View Related

Cancel Record In Subform If Click Cancel On Parent Form Before Save

May 24, 2014

I have a form and a subform in it. I added New cancel button in the form so that the the user can cancel the record creation and no record will be inserted in the parent table.

But when details are entered in the subform (a datasheet) row records will be created in the subform table. what is the correct method or how to cancel these records if the user choose to click cancel button on the parent form.

View 5 Replies View Related

Forms :: True / False - Form Properties Based On Field Value

Sep 10, 2014

On my form ECOs

When my text box RELNUM is > 0 I want form properties AllowEdits set to FALSE.

When RELNUM is null I want form properties AllowEdits set to TRUE.

This must be possible, but not entirely sure where to start.

Since I can scroll through records in this form I'm thinking I have to put an event in ON LOAD, bbut beyond that I'm at a lost.

View 11 Replies View Related

Forms :: Using Data From Another Table As Validation Criteria For A Field In Form?

Mar 24, 2015

I've two tables, QA (Quality Assurance) and Instruments. I'm using form to add data to QA.

There's a field in QA, named InstrumentUsed. The criteria is that InstrmentUsed should only accept value when 'status' field in Instruments table shows 'working'. If status is 'faulty' or 'need repair', it should pop up the related error message and cursor stays on the same field.

I've not starting learning VBA yet, so I'm trying to make use of Macro's.

How to use data from another table as a validation criteria for a field in form?

Pops up a MessageBox and stays on the same field, on the form, unless error is resolved?

View 3 Replies View Related

Make Field True If Other Field Is Null

Jul 10, 2005

Is there an expression in a query, that if want to say, if one field is not null make another field say true?

View 2 Replies View Related

Open Query If Field Is True

Jun 6, 2006

I have 3 queries that pull from 3 dfferent tables. All 3 tables contain a field called Acct but the other fields in the 3 tables are different. What I would like is to have a form field that the user can input an account number and depending on which query the account number is in, that query and result will display. I have been trying the dlookup function but can't seem to get the coding down. Also, if the account number is not in any query I would like a message box to display saying it can't be found. Thanks for any help!

View 1 Replies View Related

Open Query If Field Is True

Jun 6, 2006

I have 3 queries that pull from 3 dfferent tables. All 3 tables contain a field called Acct but the other fields in the 3 tables are different. What I would like is to have a form field that the user can input an account number and depending on which query the account number is in, that query and result will display. I have been trying the dlookup function but can't seem to get the coding down. Also, if the account number is not in any query I would like a message box to display saying it can't be found. Thanks for any help!

View 1 Replies View Related

Open Query If Field Is True

Jun 6, 2006

I have 3 queries that pull from 3 dfferent tables. All 3 tables contain a field called Acct but the other fields in the 3 tables are different. What I would like is to have a form field that the user can input an account number and depending on which query the account number is in, that query and result will display. I have been trying the dlookup function but can't seem to get the coding down. Also, if the account number is not in any query I would like a message box to display saying it can't be found. Thanks for any help!

View 3 Replies View Related

Query Criteria True/false Field

Apr 25, 2006

I'm trying to limit the records on a subform via an option group selection. The group has 2 options: optionTrue (option value = 1) and optionFalse (optio value = 2). I have the following code in my query criteria of the true/false field.

IIf([Forms]![FrmHome]![frameProcessed]=1,-1,0)


The false part works, but the true part doesn't. I've tried many variations using true/false, using checkboxes, etc. and nothing works.

The database is SQL Server if that matters.

Any suggestions?

Also, is their a way to have an option for True or False or ALL?

Thanks,
Sup

View 5 Replies View Related

Setting Table Field To True When Exporting To Csv

Sep 21, 2006

Hi,

I export a query as csv to upload to another database on a web site. When that csv file has been exported I'd like the query to be emptied, so that the next time I export I don't export duplicates. What's the easiest way to do that?

I've been thinking of having a field in the table with a check box that is checked when the file is exported. The query then selects only those records where that box is not checked.

But how can I check those boxes on Export rather than when I run the query? The reason being that I may want to preview by running the query, without having that affecting the check box.

View 1 Replies View Related

DSum Data In Subform For A Particular Field If TRUE

Jul 19, 2015

I have a from which has a sub Form in it which uses a query of a table which is filtered, In the main form I want a sum of the data in the subform for a particular field if TRUE.

In the main form I have a text field with the Syntax =DSum("[Cost]","RepairInformation","[Labour] =.True."), but this returns an error, I have no issues for the total cost for with I have a Text Box in the subform which returns the Total cost in the main form.

What are my options to have a conditional sum for a particular condition.

View 5 Replies View Related

Autopopulate Field When Checkbox Is Selected True

Jan 27, 2012

I would like to have a field autopopulate (date field) when a checkbox is selected 'true'

Fields are:

FolderBCCheck-In (checkbox field)
Check-InDate (date field)

I need the check-inDate field to populate Date() when the FolderBCCheck-In field is checked.

I assume it is VBA code to the AfterUpdate (Event procedure). Just having trouble getting the right code.

View 10 Replies View Related

Cancel Closing The Form/App

Mar 10, 2006

I'm looking for a way to cancel the closing of a form/app. I added a button asking if the user is sure they wish to exit, and am having difficulty finding the correct code to cancel the close event.Here is my codeDim ians As Integer ians = MsgBox("Are you sure you wish to exit?", vbYesNo, "Exit App") If ians = vbNo Then DoCmd.CancelEvent DoCmd.OpenForm "orderlist", acNormal Exit Sub End IfCan help or send me down the right path?Thanks

View 2 Replies View Related

Cancel And Exit Form

Jul 7, 2006

Hi all, I have a textbox with an input mask for an id number, so if I begin adding numbers I get an error message if they're not in correct format- this is fine- but I want the user to be able to cancel the entry and exit the form, but when I click the cancel button I get an error message about the id format- anyone know how I can allow cancel to override this?
thanx

View 2 Replies View Related

Cancel Out Of Edit Form

Nov 1, 2006

Hi
I have a form with avout 4 fields based upon a query to allow user to edit an entry if needed.
I want to put a cancel button on so that if they change their mind after having changed a field it reverts to its original value - so for instance they decide to change a land line phone number to a mobile, exit the field but then have a brain storm and decide not to do this so hit the cancel button.
At the moment my cancel button just closes the form (and accepts the overwrite) which would be fine if I am using ADO but not if I am using a bound form.
I am sure there is a simple answer (since I cannot be the only person who thinks this option might be a good idea). I am just not sure how to look for it.
Any thoughts or ideas?
Thanks

View 5 Replies View Related

Queries :: Return Records If One Field Is True And Another False

Jul 23, 2013

I am trying to create a query pulling from several tables. I will use the example below to illustrate what I'd like to do.

I have a field called 'Acc_Num', one called 'Stat_Code', and a third called 'Cat_Code'.

Each 'Acc_Num' can have multiple records because there are multiple Stat_Code and Cat_Code values.

What I want to do is isolate just the Acc_Num records where Stat_Code = 1 and Cat_Code equals A1.

I also want to isolate the Acc_num records where the Stat_code = 1 and where Cat_code does not exist.

View 7 Replies View Related

Cancel Form Close Event

Aug 3, 2005

Is there a way to cancel a form's close event? If a user clicks the form's close button, I want a msgbox to ask if they are sure, and if yes continue and close, else cancel the forms close event. I know how to perform the msgbox and the if statement. I can not figure out how to cancel the form's close event.

View 2 Replies View Related

Modules & VBA :: Cancel Button On Form

Oct 8, 2013

what would i write in the onclick private sub of my 'btnCancel'.i need it to do a number of things depending on whether there is data entered in the form fields or whether its completely empty, is there is data being entered in some fields and the cancel button is clicked it should ask whether the user wants to lose all current data as a msgbox, or if there is completely no data in any of the fields and the cancel button is clicked it shoud take me make to the main form where the rest of my buttons work, which is "inmode normal"

View 3 Replies View Related

General :: Determine Value Of Any Field Based On True And False Statement

Aug 5, 2013

In a form, the value of any field may determine if the other field will be true or false. For example in my form, inventory, if value in code is equal to 2 then the Field Table will be automatically false.

View 12 Replies View Related

Want To Cancel Prompt, Select No And Still Closes Form

Aug 14, 2007

Hi All,

I have a pop up form that requires me to fill out all 4 fields of the form. When I don't, I get a prompt telling me which field(s) I've forgotton to fill in and allows me the option to Cancel (Yes or No) and if i decide yes it wont save and will close the form. BUT when I say No (Don't cancel), it still closes out the form and I obviously don't want that. I don't know if it might have to do with my macro button either? Any clue?

Thanks in Advance!

MY CODE:

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim blnError As Boolean
Dim strError As String

strError = "You are missing data for "

If IsNull(Me.[Account Number]) Or Me.[Account Number] = "" Then
blnError = True
strError = strError & "Account Number,"
End If

If IsNull(Me.Contact) Or Me.Contact = "" Then
blnError = True
strError = strError & " Contact,"
End If

If IsNull(Me.Department) Or Me.Department = "" Then
blnError = True
strError = strError & " Department,"
End If

If IsNull(Me.Address) Or Me.Address = "" Then
blnError = True
strError = strError & " Address,"
End If

If blnError Then
strError = Left(strError, Len(strError) - 1)
If MsgBox(strError & vbCrLf & "Are you sure you want to cancel." & vbCrLf & "If you do, the info will not be added.", vbQuestion + vbYesNo, "Close Confirmation") = vbNo Then
Cancel = True
End If
End If
End Sub

View 6 Replies View Related

Forms :: Cancel When Hitting Form X Button

May 9, 2013

Here's the setup:

- I have a parent form bound to a parent table with a subform bound to a subtable.

- The parent does not allow data entry and has its sole field filled by a listbox.

- The subForm is a data entry form which contains two buttons in addition to it's fields: btnCancel and btnOK

-btnOK checks to ensure that all required fields are filled out and then saves and closes the parent form. - ALL OK

- btnCancel closes undoes any changes andcloses the form - ALL OK

The issue I have is with the user utilizing the Parent form x button to close the form. For uniformity I would like to not remove this button but would like it to prompt the user whether to discard the changes if the form is dirty.

I attempted the following on both the parent and sub forms to no avail. I can't even get the event to trigger:

Code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim rspSaveorDiscard As VbMsgBoxResult
rspSaveorDiscard = vbYes

If Me.Dirty Then
intSaveorDiscard = MsgBox("Are you sure you want to close without saving?", vbYesNo, "Discard Changes")

[Code] .....

I was under the impression that when closing a form using the x button the before_update event was triggered first, then the close event, then the unload event. How should I handle this?

View 1 Replies View Related

Modules & VBA :: Button To Cancel Entry On A Form

Jul 17, 2013

I'm looking for a button that cancels an entry on a form. I want everything within that form to be cancelled including the Primary Key field. I currently have a button the uses the me.Undo code and then automatically closes, however this only clears the data that has been entered by the user. So when the user re-opens the form the primary key field is showing a 2 instead of a 1.

View 3 Replies View Related

Cancel Button On Add New Record Form Not Working

Feb 5, 2014

I have a cancel button on an add new record form and its not working for some reason. When I press cancel it prompts if I really want to cancel and when I press yes it cancels the record creation BUT it adds a number to the recordID autonumber as if one has been created. Is there anyway to stop this? Here is my code

Option Compare Database
Private Sub Cancel_Click()
On Error GoTo Err_Cancel_Click
If Me.Dirty = True Then

[Code] .....

View 14 Replies View Related

Reports :: Change Font Color Based On True / False Value Of Another Field

Jun 28, 2013

In access report, I'm trying to change color of text in specific records based on the true/false value in another record. Works in forms using conditional formatting, but won't seem to work in a report.

Here's what works in forms : IIf([2009 Symposium]=true, forecolor=255 ....this changes the records to red.

But using the same expression in a report doesn't change the text color.

View 2 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved