I have a form which opens as a pop up when the system starts. On here are several buttons, which open other forms.Some of these just open another form and the user starts using the system, other close that form and open another one, and take go further into the structure of the system, then the forms that open have the same etc.For each of the buttons the code is very similar..For forms that open another one and don't close the main form:
Code:
Private Sub cmdescalations_Click()
DoCmd.OpenForm "frmEscalations"
End Sub
for those that close the form:
Code:
Private Sub cmdStock_Click()
DoCmd.Close acForm, Me.Name, acSaveNo
DoCmd.OpenForm "frmMain_Stock"
End Sub
Just the main of the form it opens changes, and sometimes with ,,,dialog in the options if its required.The opening part works every time without fail, but the form doesn't always close and I end up with two forms open instead of one. If I close the newly opened one and press the button again it works fine. This is purely random and only started a few days ago, up until then it has been working fine.
There is a hidden form that is open as well when the system starts, which check for something on a timer event every 60 seconds. If that event is firing would the focus shift to the hidden form, between me pressing the button and the event firing and the hidden form is getting closed? then the new form opening?
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?
I have a workbook which is already opened and I want to close it. the code that i have is (see below) is not working.
Code:
Function CloseExcel(sExcelFile As String) As Integer Dim XLapp As New Excel.Application Dim ObjXL As Excel.Workbook On Error GoTo ErrorTrap Set ObjXL = XLapp.Workbooks.Open(sExcelFile)
I 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?
I have a user login form wherein my users authenticate their employeeid as well as their person PIN. If the user authenticates with a valid username/ password combination, then the employee id and the role (permissions) for that user are stored on the form and it is minimized to stay open. If the user that authenticates has "Admin" role then I want to unhide the navigation pane. For all other roles I want the navigation pane to remain hidden.
That said, the default setting in the database is for the navigation pane to remain hidden. I have a piece of code on the login form as follows:
Code: If Me.role = "Admin" Then DoCmd.SelectObject acTable, "NavigationPaneObject", True DoCmd.RunCommand acCmdWindowUnhide Else Exit Sub End If
This is successfully unhiding the navigation pane, but I'm getting the following error message and I don't know how to get it to go away."Run-time error '2544':
"Microsoft Access cannot find the NavigationPaneObject you referenced in the Object Name argument."The code is unhiding the navigation pane.
Once you open the db. open up the frmQuoteLog and the frmPDMontior. You will notice one record is displayed in the frmPDMonitor (Justin Ryan). This is correct.Now to test out the issue leave open the frmPDMonitor and frmQuoteLog at the same time. Go to frmQuotLog, go to the first record, make the "Sales Coordinator" = "Chris April", then check the box that says "Display on Product Design Monitor", then press the "Save Changes" button.Then look at the frmPDMonitor and you will notice the new record is now displayed on the form. This is correct as well.
Leaving open both forms, go to frmQuoteLog and uncheck the box you previous checked on the first record, then press "Save Changes".Then look again at the frmPDMontior and notice that the previous record is gone but the remaining record is now duplicated.
Only when I close the frmPDMonitor and reopen it, does the duplication go away.How can I avoid this duplication without closing and reopening the frmPDMonitor? The purpose of this form is to be ran 24/7.
I am looking to check 3 sub forms for values and if they contain any then delete them. After a bit of googling I discovered that you should use recordset.recordcount - to which I tried but I get method or data not found - is this a valid method?
My code to which Im using is:
If Me.NoneChargeable_Admin_subform.Recordset.RecordCount >= 1 And Me.NoneChargeable_Manufact_subform.Recordset.RecordCount >= 1 And Me.NoneChargeable_Research_subform.Recordset.RecordCount >= 1 Then DoCmd.RunSQL "DELETE NoneChargeable_Admin.*, NoneChargeable_Manufact.*, NoneChargeable_Research.* " & vbCrLf & _ "FROM NoneChargeable_Admin, NoneChargeable_Manufact, NoneChargeable_Research;" End If DoCmd.Close acForm, "NoneChargeableHrs_frm", acSaveNo End Sub
Private Sub Command79_Click() On Error GoTo Err_Command79_Click 'the following code is supposed to warn the user if there is no STOP filling time for each START filling time before the main form is closed
If [Text344] > #12:00:01 AM# Then If [Text365] >= [Text344] Then
I want to delete an excel file from within access vba. Problem is that if the file is open, it obviously cannot be deleted. so I need to check to see if that specific excel workbook is open and if it is, I want to close it before I can delete it.
All of the answers here involve creating an excel object and opening it before closing it. If I do that all that happens is a second instance of the workbook opens then closes leaving the originally open workbook still open.
Sub xx() Dim XLapp As New Excel.Application Dim ObjXL As Excel.Workbook Set ObjXL = XLapp.Workbooks.Open("C:dropboxexcelimport.xlsx ") ObjXL.Application.Visible = True
[Code] .....
The above code demonstrates my problem, if the import.xlsx file is already open then the code just opens another instance of this workbook and then closes it again leaving the original workbook open and as such cannot be deleted.
I have a form to add a record to a table. How can I give the user a way to close this form without saving the just created record.
I tried
If me.dirty then DoCmd.RunCommand acCmdDeleteRecord endif
This works, but gives a messagebox in return to confirm the command, and I don't want that. And I try to avoid sendkeys. I also don't want to change the options of access.
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?
Does anyone know a line of code I could write that would close all other forms, besides the form the user is working on?
I can't stand it when a new form opens up and the old one is still open. I have written individual macros to close the forms, but that is getting rather cumbersome. Any help is greatly appreciated. Thanks!
I have a database that runs a macro/report every 2 hours, however our network has been up and down lately. This causes the macro to fail when trying to log into the system because the table that is storing your username is no longer in the database. When I check, all tables, linked tables, forms, reports, macros and modules are all gone. I find the only way to get them back is to close the database and reopen.
What I want is a way to reconnect the objects without closing and reopening.
I have had some issues caused by users exiting the database entirely when they realise that they have entered something incorrectly; this in turn has caused problems re-opening the half finished record (the last step of the record creation is to allocate it a unique reference number, which is then used to re-open the record for editing on a point and click form) - now, this is entirely my fault for expecting users to clear up behind them or to exit properly.
So, I am making some changes - when the dashboard form opens it removes the database window close button. I have a separate close button which has the following code:
Code: Private Sub cmdGoodbye_Click() Do While Forms.Count > 0 DoCmd.CLOSE acForm, Forms(0).Name, acSaveNo Loop DoCmd.Quit End Sub
However, I would like to add a line to automatically save any records before closing each form - is this possible?
I have an unbound start-up form with a button that I want to open another form. When the user is done with the second form and clicks a close button, I want to bring up the first form.
Q. Is it best to leave the first form open in the background or close and re-open it? (And why?) :confused:
I've got a Datasheet form which has a Datasheet Subform within it. By default, none of the subforms display, and the user clicks the "plus" on the leftmost column. What I'd like to do is prevent a user from having multiple subforms open at once. Basically, when the user clicks to open another subform, the first one closes.
How can this be done?
Also, is there a way to do conditional formatting (either using the wizard or with vba) on datasheet forms?
I have MDB database linked to SQL SERVER through VPN connection.I created links to the sql server Links are dsnless..Everything works fine but when I lost VPN connection or sql connection has been broken I can't refresh links to the tables.I receive message 3146 sql connection failed..I must close database and start again...
I tried different methods like ado,dao, and vba docmd.transferdatabase,aclink... but no success, table cant be relinked.
Only way I can relink is to change ip adress in conn.string
E.g. 192.124.0.2 (1st ip- router server ip) and after connection failed i can use 192.124.0.32 (2nd ip - server local ip) and that's it if i lost connection for the 3rd time... i must restart application.
It seems that access database keep the previous connection..how to reset or drop database connection to the sql server and refresh links to the tables with vba code without closing access database...
I have look through the forum but can not find a solution to my problem.
I have a popup form set to "popup" and "modal" "frmJobBookOut" which passes data to a query "qryJobBookOut". In the query there is a field called "job_no" and I have set the criteria to reference the "frmJobBookOut" ** [forms]![frmJobBookout]![job_no] ** and a report "rptInvoice" based on the query "qryJobBookOuit". This all works fine.
The report loads with the popup "frmJobBookout" form still displayed. I know that the popup form is still displayed because I have the setting "modal" and until I click on the close button it will remain on screen.
Is there a way I can close the popup "frmJobBookOut" form after the report has loaded.
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.
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 have an A2007 application running on XP. From main form, Form1, another form, Form2, is opened.
When I attempt to close the application by clicking in the cross in the rh-corner of Access window, I get a crash midway through the OnLoad of Form2. I cannot figure out why the heck the On Load event fires when the form is being closed, and have some difficulties stepping through the code.
I recall having heard of OnLoad firing when trying to close a Form.
I have a form (frmAuditEntry) that includes a subform (sfrmAuditDetail). The user will enter audit information on the subform. There is a check box on the subform to identify containers that had errors in selection. When the box is check by the user, a pop up form opens where the user can enter the details regarding the type of error. The audit number and the container ID are carried over from the main form to the pop up form to link the information.
This is the code I have in the AfterUpdate event of the checkbox:
Private Sub Errors_AfterUpdate() Dim rs As Object Dim strBookmark As String strBookmark = Me.ContainerID Me.Requery
[Code] ....
This works great and keeps the focus on the record the user checked having errors so the right information transfers tot he pop up form fields. When the pop up form is closed, the focus goes back to the subform but keeps the focus on the container ID control of the record that the user previously checked as having errors (hope that makes sense).
What I would like to happen is this: When the pop up form is closed, I want the focus to go back to the subform but to go to the last blank record on the subform (if the user moved off the record before checking the error checkbox) or go to a new record (if the user did not move to a new record already before checking the error checkbox).
I have a popup called by a subform to add a new record or edit a selected record. I keep getting "Runtime error 32502". The value you entered isn't valid for the field "|"
I have no required fields and all the drop down related fields have the right value type in them (That I can find)The only "|" reference I can find is in the OpenArgs content below when I load the form. If I'm adding a new record I pass two fileds via the OpenArgs
Private Sub Command52_Click() DoCmd.OpenForm "AddDebtorPaymentFrm", , , , acFormAdd, OpenArgs:=Me![DebtorId] & "|" & Me![MatterId] End Sub
or if I'm modifying a record from the subform on click I
Private Sub Text38_Click() DoCmd.OpenForm "AddDebtorPaymentFrm", acNormal, , "[Transactions].[TransId] = " & Me.TransId, acFormEdit End Sub
Below is the Popup Load code
Private Sub Form_Load() If Me.DataEntry = True Then Me.VariableHeading = "Add A Debtor Payment"