I have an app that is browsing a survey. When the survey is in simple 'browse' mode, I want to be able to emulate the effect of a SkipResponse. (A SkipResponse is when selecting a particular value causes the normally sequential processing of survey questions to become non-linear. A sort of If Response = thisvalue then next question is something else) I can 'request' the SkipResponse by using Ctrl/Alt click, and then emulate returning from the target question by using Ctrl/Shift Click.
My problem is that I want to do the same thing (for a return) by allowing Ctrl/Shift on the Exit button. If I just use a regular mouseup evvent, it will complete, but will then go ahead and run the code for the Click event, to exit the survey. What I would like is to be able to cancel the processing of the Click event from within the handler of the MouseUp event.
I have a form (Pipeline) with an on load event that automatically directs the user to a new empty record.
Code:
Private Sub Form_Load() DoCmd.GoToRecord , , acNewRec End Sub
Now my problem is that I am trying to design a 'search form' that will allow the user to look up a specific record in the main form by pressing a command button. Creating the search form is easy enough. I cannot figure out how to override the on load event in the main form when pressing the command button.
As it is right now, the button opens the form and then go directly to a new record.
I have docmd.sendobject that opens Outlook to send an email, etc. However if the user does not send the email and cancels out of the message Access is asking the user if they want to debug. How can I simply have Access return to where the user was before they hit the command button that launched Outlook. I don't want them to go into the code. In fact I don't even want a message of any type - I thought I could trap the cancel somehow and code for it...
i dont want a user to be able to change a value in a combo box if a textbox is not null. im not sure what to add on the onenter event. is there not somthing like cancel=true
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.
I am trying to use a Combobox BeforeUpdate Event to achieve a required result.
I have two combo boxes inside a frame. The first is a year number 2011, 2012, 2013, 2014
The Second is the Week No ranging from 1-52, but 1-53 in some cases and this updates accordingly with the year number selected.
When the user has selected Week 53 and then changes the year to a year where only 52 weeks exist I want to Cancel their event.
I have already made a function to determine if 53 weeks exits however when I come to do the Cancel Event, the combobox for the year doesn't change back. It stays on the users new selection.
Below is the code that I am trying to use:
Private Sub cmbWeekNoFromYear_BeforeUpdate(Cancel As Integer) If UpdateWeekNoSelections Then Cancel = True Me.cmbWeekNoFromYear.Undo End If End Sub
'cmbWeekNoFromYear is the name of the combobox which holds the year number 'UpdateWeekNoSelections Simply returns True if I want the users change cancelled for cmbWeekNoFromYear
I have a form with a control for the user to enter some data and then two command buttons 'OK' and 'Cancel'
For the OnExit event in the control I have a procedure that check the user input and if incorrect, opens a message box with an error message asking the user to correct the data. It then cancels the event so the focus remains in the current control.
However if the user presses the 'Cancel' command button on the form to cancel & close the form, the OnExit event for the current control still fires and asks the user to correct the data.
In my code in the control, how can I recognise that the Cancel command button has been pressed, so I can cancel the OnExit event and close the form?
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.
- 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?
This frame controls an option group. If they are in an existing citation and want to start one for another type, this offers to write a new record in when they try to switch. Problem is, if it DOES write the new record, it seems to be saving the old record, and thus both will end up 56, for example. Access seems to be ignoring/overwriting the Me.frameCitationType.Undo (I don't want to use Me.Undo because they may have made other changes as well).
If the user does not spawn the new citation, it undoes fine. I suspect the problem may be the Filter/FilterOn?
Code: Private Sub frameCitationType_BeforeUpdate(Cancel As Integer) Dim chap As Integer Dim othercit As Variant Dim curRecord As DAO.Recordset Dim curDefend As DAO.Recordset If Me.NewRecord = True And IsNull(Me.CaseNumber) Then MsgBox "Enter the Service Order and Increment first, please.", vbExclamation
I am fairly new to Access and my "changed" position at work requires that I learn much more about the software. My first challenge is to learn how to make an existing form prompt a user to confirm or cancel changes. I don't know anything about coding but I searched online and found some coded that is supposed to make this happen. I went to "form properties'' and typed this (below) in BeforeUpdate:
'If the form data has changed a message is shown asking if 'the changes should be saved. If the answer is no then 'the changes are undone
I have a listbox on a subform (or a subform within a subform).
When it is clicked I want all other listboxes to unselect.
There may be listboxes on the mainform, on other subforms, on other subforms of subforms.
I imagine I'm looking at a recursive function of some sort, but I'm not entirely sure of syntax to identify parent and children forms...
pseudocode so far: loop all controls if control = listbox, unselect all if control = subform - recurse: loop all subform controls if control = parent... err... Fail.
In ContactIDForm it contain 1 textbox name 'TextBox' with Button Name 'Btn'
In ContactIDForm there is only 1 Text Box ContactIDTextBox and 1 Button. User Enters ID in TextBox and On Button Click Event it should check data from TextBox in Table name (ContactDetailTable) in field ContactID and if there is record matching, ContactInfoForm should Open else NewContactForm should open with ContactIDTextBox value in it.
I have a main form that holds a tab control with a number of sub forms. One of these subforms has a pop up form for adding new records to it. After closing this pop up form I would like to initate code on the sub form where the new record now will appear. One of the things I like to do is simply to set focus to the record the user just added.
My problem is that I cannot seem to get any event to trigger in this setting (bben trying more or less all). If I understand things right the fact that I am using a pop up form and the fact that I am using a tab control both seem to interfer with the Activate event and making it passive.
How I can trigger code on the sub form (after closing the "Add New" pop up form)?
On my form i have a control called WeekDate (this is always the start of the week (monday), below i have a subform (sbfrmWorksheetDetails) contained in a tab control (tabWeek) with 5 pages for each day of the week, i have written a select case statement in the onchange event for tabWeek which selects records based on the day of the week (so = WeekDate for Monday, +1 for Tuesday, +2 for Wednesday etc), this works great, i have also put a bit of code in the same onchange event that makes the default value for a new record for the field WorkDayDate in the subform +1 and +2 etc. this works great for existing records, each new line in the subform puts the right date in, however this seems to cock up when clicking on a new tab that doesn't have a record in..Here's the code.
Private Sub tabWeek_Change() Select Case tabWeek Case 0 'Monday Forms!WeeklyWorksheet!sbfrmWorksheetDetails.Form.R ecordSource = "SELECT * FROM tblWorksheetDetails WHERE (((tblWorksheetDetails.WorkDayDate) = [Forms]![WeeklyWorksheet]![WorksheetDate]))" Forms!WeeklyWorksheet!sbfrmWorksheetDetails.Form!W orkDayDate.DefaultValue = SQLDate(Me.WorksheetDate) Case 1 'Tuesday Same as above but WorksheetDate+ 1 for both select and default value. Case 2 'Wednesday Same but +2 etc. End Select End Sub
the SQLDate is some code that converts the american US date formatting to UK formatting. i'm not sure if that's the problem, but i'll post that anyway:
Function SQLDate(vDate As Variant) As String If IsDate(vDate) Then SQLDate = "#" & Format$(vDate, "dd/mm/yyyy") & "#" End If End Function
I can't quite work out what screwing this up upon adding a new record.
I have a form which displays information in the footer until the use has accomplished some tasks. Once I verify that all is well I allow the user to change the fields in the footer. I want to verify that the proper changes were made but the BeforeUpdate event does not fire until the form is closed.
Relationships all work and reporting works. I now want to create a form for entering attendance into a single event as a batch. I only want to enter the event ID one time and then be able to enter participant ID's for all attendees. The event coordinator will have a tablet running the db at the door and each participant will use their ID card to be scanned into the event.
I don't want the coordinator to have to reselect the correct event between each participants scan but instead to enter the event once and have multiple participants ID's entered for the one event. The date field is defaulting to current date/time [Now()].
I have some code for the Key Down event for particular column in my subform
Private Sub Sample_ID_KeyDown(KeyCode As Integer, Shift As Integer) Sample_ID = Nz(DMax("Sample_ID", "Sample_Sheets")) + 1 mTo = Nz(DMax("mTo", "Sample_Sheets")) + 1 mFrom = Nz(DMax("mFrom", "Sample_Sheets")) End Sub
This works, however it also work when I press Key Up, changing what the key down previously did. I do not want it to do this. I have nothing entered in the Key up event for the form properties.
I have a form with a combo box that is populated by (1) a union query, and (2) a make table query from that union query. The reason I have both is because I want to have an autonumber and I can't do that directly in the first query.
So any time I update any of the tables that are in the union query, then go back to the form, i want the the combo box to update the list which means I have to run (1) and then (2) to repopulate the combo box with the updates.