Prevent Form Closing
Mar 18, 2005Hi
Can somebody tell me please how to prevent a user from closing a form if a specified other form is open?
Thanks
tt
Hi
Can somebody tell me please how to prevent a user from closing a form if a specified other form is open?
Thanks
tt
I've got this form called mainmenu and inside this form I've got this code to prevent it from being closed.
Code:
Private Sub Form_Unload(Cancel As Integer)
Cancel = True
End Sub
Now then, when I try to switch to design view in this form it doesn't let me because of this code. Is there anyway to tweak this code so that I can get into design view without having to keep disabling it?
I am using Access 2010 - Version 14.0.61.29.5000 (32-bit)
I am building a custom Export Wizard to export data to Excel using the Report Wizard for the basic ideas.
All I am trying to do is have a [Back] button on a form to open another form and close the current form.
Private Sub cmdBack_Click()
DoCmd.OpenForm "frm_ExportWizardPage2", , , , , , Nz(Me.OpenArgs)
DoCmd.Close acForm, "frm_ExportWizardPage3"
End Sub
The new form is opening but then the current form is not closing. All forms are the same size, shape and positioned centrally although this should not make any difference.
Could this be anything to do with which form has the focus when I open the new form?
I have a bound form with a few fields. I would like to run a sub after some of these fields are modified, but not others. I would like it to run only once, after user finishes his work on the form.
When using the Unload event - the form on the form is not there anymore (or did I get something wrong?).
Is there a way to trap Data on form just before the form closes?
This is related to some advice I received some time ago <a href="http://www.access-programmers.co.uk/forums/showthread.php?t=64818">here<a>
I am runnign some code, it performs some applications, then, if a Count Field is greater than 1, a form opens as a dialog, displaying some information:
Dim A As String
A = "NewForm"
If Me.[Count] > 0 Then
DoCmd.OpenForm A, acNormal, , , , acDialog
End If
If Me.Continue = "No" Then
Exit Sub
End If
The new form opens, and you can either view it, and click continue, which will run the rest of the code, or you can click quit, which updates Me.Continue to "No", and then it exits.
The problem is, when it exits the Sub, it doesn't really stop the code, it just leaves things kind of hanging. When I try to run the code again, I get:
3321 - The database engine could not lock the table 'NewTable' becuase it is already in use by another person or process.
Another symptom - The original form where I click to start running the code, has two date fields. Normally, when this form opens, they are blank, but when I exit the sub, as above, the previous dates I entered are still sitting there.
How can I make the forms really close?
When a form is open you can also see on the task bar that the form is open
If the user right clicks on the form(on the task bar ) they get the following options minimize , maximise , close.
Does any one know how I can stop the user selecting Close please ?
when i close the form all the fileds in the forms gets saved to the table.
i want it should pop up before closing to save it or not.
i have a button on the form to save the fields in the table.
which has code
command23_Click()
DoCmd.GoToRecord , , acNewRec
I have a split form that's like a list of pending tasks. The data source is a linked SharePoint 2013 list where users submit requests. The user takes the information from each record and performs an action. When it is done, the user presses a button and the task status changes from "Pending" to "Processed". The form record source is based on a query that finds only records with a status of "Pending" so when the user changes the status of the task, it is removed from the list. It works fine except when there is only one task left in the work list. If the user processes the last task, the form refreshes and it goes to a new empty record and I get an error message that says I must enter a value into one of the required fields. I tried making the field non-required but it just creates an empty record in the table.
View 3 Replies View RelatedHi all,
I've added a message box to what is basically a standard simple to use access control, "closeForm", I'm a newbie working on learning access vb. I'm guessing my code if fudged. Any help is greatly appreciated.
Private Sub Close_Click()
On Error GoTo Err_Close_Click
Dim Answer As Integer
Answer = MsgBox("Press Ok to Close, Cancel to Continue.", vbOKCancel + vbQuestion, "Exit Data Entry?")
If vbOK Then DoCmd.Close
Exit_Close_Click:
Exit Sub
Err_Close_Click:
MsgBox Err.Description
Resume Exit_Close_Click
End Sub
Thanks to all in advance
I have found that when closing a form and changes have been made to the fields, these changes will be saved.
I would like to know if there it is posible to only save the changes when a command button is pressed and not when if you close the form any other way.
Hi,
How can I stop user from closing the form if the mantory fields are not filled up? I try using gotocontrol but it is not working.
Not sure what to call this "phenomenon" so haven't had any luck searching for an answer.
I have a form (form1) that has a close button with code behind it. When the button is clicked, it takes a few seconds for the code to run. When form1 closes, all is well up until: There is another form (form2) that is open behind form1. When form1 closes, part of it is still visible over form2.
Hope this makes sense. Any way to solve?
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 RelatedHi guys!
When closing a form, I want my system to prompt: "Close without saving?". If yes, I want to continue the closing-proces, but when "no" is pressed, I want to just close the MsgBox-window and of course keep all the data-entries...
If MsgBox("Close without saving?", vbYesNo, "Close?") = vbNo Then XXXXXXX
What do I write instead of the X'es???
// JR
I have a control in Form1 and after LostFocus it open a Form2, Form1 rests still open. But I want to close Form1 after LostFocus. How can I do that?
Here is an example:
Form1:
Private Sub POD_LostFocus()
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Form2"
DoCmd.OpenForm stDocName, , , stLinkCriteria
End Sub
Thanks!
I have a form that has some fields with validation rules, which are Not Is Null. I have a private function to validate records (here is a snipet)
Code:
Private Function ValidateRecord() As Boolean
ValidateRecord = False
Select Case Outcome
Case "Interpretation"
If IsNull(Me.[Date Provided]) Then
MsgBox [Date Provided].ValidationText
Exit Function
End If
[code]...
The form has a save and close button. I was wondering if there was a way to keep the form from closing if those fields are null. Right now, you click the button, the validation text pops up (it pops up twice too), and then the form closes.
I thought about maybe having the (If...Then, Inputbox)code in the Form_BeforeUpdate instead. If I do that, is there a way to do that for date textboxes and comboboxes where you choose the value instead of typing it?
Closing a form with a large amount of records is slow after sorting the records, is there a way to avoid this.
Its slower to close after sorting than the the sum of the time to close the form and sort the records, which doesn't seem to make much sense.
Can anyone help?
Ta - Paul
I have a form for inputting products into a table called "products". On this form is a combo box which lists the Suppliers. This list is generated by a Table called "suppliers".
If the supplier has not alredy been entered into the supplier table then it is not listed in the combo box list. I have added a button to open a supplier entry form to add the supplier to the supplier table. Once the new supplier is entered and the supplier entry form closed, the new entry does not show in the combo box list unless you close the product form and reopen it.
How do I refresh the combo box list without closing the form it is in and reopening it.
I have been surfing these forums for about 3 hours and I cannot find the answer to my question. So, if this is already answered in another post I apologize in advance...
Here is my problem. I need to have a "Login" form to start this db that I am working on. I have found a post that I referred to for the code with some editing to make it work for me.... The code is....
Private Sub Login_Click()
On Error GoTo errorfix
Set db = CurrentDb
Set r = db.OpenRecordset("tblBouncers")
Do Until r.EOF
If BName = r![Bouncer] And BPW = r![BPassword] And r![Active] = 1 Then
DoCmd.OpenForm "frmMain", acNormal
GoTo exit_sub
Else
r.MoveNext
End If
Loop
MsgBox "Invalid Login, Please Try Again."
BPW.Value = ""
DoCmd.GoToControl "BName"
BName.Value = ""
exit_sub:
Exit Sub
errorfix:
MsgBox Err.Description
Resume exit_sub
End Sub
Most everything works fine. If my username and password get qualified, the main form opens, or if my username and password are wrong, I get the appropriate message and it clears the boxes like I want it to. However, my problem is that I cannot, no matter how hard I play with this, get it to close the Login form, without encountering an error.
Yes, I know that the code above doesn't have anything telling it to close the form, because no matter where I put the "DoCmd.Close acform, "frmBLogin" "I keep getting an error message "This action can't be carried out while processing a form or report event."
What am I missing, and where do I put it? I have tried various locations for setting db and r to nothing then closing the form (based on advice from other posts I have read), but keep getting the same error, or worse (worse being can't close the error and have to end the process through task manager).
Will someone please direct me in the right direction? You can even go so far as to tell me my code is completely wrong... This is my first attempt at loops so you won't hurt my feelings.
Thanx for any guidance,
Jenn
Can anyone guide me to how to code a form that will not error when closed if nothing has been input to the first field which has the focus? I have a start up form that has fields connected to a table and if this database is open and the user desides not to use it then closes it without entering any data it will error. Is this a recordset issue? Thanks
View 1 Replies View RelatedHey,
I have a form with 55 values entered. On closing the form, I need it to decide if this is a new record. If it is a new record, it loads all 55 values into an array. If all values are above 20,000, it goes ahead and closes the form. If any are below 20,000, it writes the record to another table and brings up that form to add add a comment.
Every thing does as it should except determining if it is a new record. What property will trigger it properly? All the properties I have tried either triggers it on all the records (even if it is an old record) or it does not trigger it and closes without prompting the code.
I have created a form with buttons which runs queries. The parameters I need for the query are being passed through just as I wish and the relevant query is run correctly. However, if I then press the button on the form with different parameters I get the results from the previous query. I can only solve this by closing the query before pressing the button. Is there an easy way to close the query to prevent this from happening. In case this is relevant, the only data which I am returning from the query is stored in the windows clipboard.
View 6 Replies View RelatedI currently have 3 forms open and when I call a specific function and it gets to this line below it goes to the on close of 1 of my open forms closes that form before it opens the selected form in code (below) in design mode. It doesn't close all my forms....why does it do this?
DoCmd.OpenForm formname:=dynform, View:=acDesign, WindowMode:=acHidden
I have a form with a subform. There is a close button on the main form which I have applied a key command of Alt + c and when the focus is on the main form it closes the form as you expect. But if the focus is on the subform, using Alt+c does nothing. I am trying to give the user a way to avoid using the mouse (so they do not have to click on the button from the subform. Also it is confusing that the key command doesn't always work in the view of the user, and in reality he is on the subform.)
So my thinking is:
1. Can I create a close button on the subform (and give it the key command of Alt + c) and in the code close the form and subform, if so - how to I refer to the form/subform?
2. Is there some way to apply the key command of Alt + c on the subform to activate the close button on the main form?
I need to prevent a form from opening if
no data (no picture) is found in an image
control on the form that needs to be
opened.
The form is opened in this manner:
DoCmd OpenForm StDocName,,,stLinkCriteria
Certain records will not have a picture so the
form doesn't need to be opended.
Thank you
I got an error msg on form with closing. I have a main form (SalesReturnOrDamaged) and subform (SalesReturnOrDamagedSubform).
i have used a VBA code on main form Close Command button as per shown in Code Tag. But that is not working and shown an error msg as per screenshot. how to change that VBA code for empty form close without save the record?
Code:
Private Sub Close_Click()
On Error GoTo Err_Close_Click
If Forms![SalesReturnOrDamaged]![SalesReturnOrDamagedSubform].Form![ItemCode].Value = "" Then
Forms![SalesReturnOrDamaged]![SalesReturnOrDamagedSubform].Form![Product].Value = ""
Forms![SalesReturnOrDamaged]![SalesReturnOrDamagedSubform].Form![MRP].Value = 0 Or ""
[code]......