Modules & VBA :: Not Allow Form Close If Date Not Filled In
Feb 24, 2015
I have a problem when I close a form to stop it from closing if a date is not filled in.
If the field "Case_Status" is filled in with "response received" and the date field "response_received_date" is blank, it shows a message and fils in the text box with red background.
It simply fails to keep the form from closing till the date is filled in. Code I have so far:
Private Sub CloseForm_Click()
If Me.Case_Status = "response received" And IsNull(Me.response_received__date_) Then
Me.response_received__date.BackColor = RGB(255, 0, 0)
MsgBox ("Please fill in manatory fields!!!")
DoCmd.CancelEvent
Else
DoCmd.Close
End If
End Sub
I try to create an error message if a user fills in a date field and leaves a combo box with wrong value.I have no clue how to use "Is Not" to check the combo box.The date field that will be filled in is called "Sent to Check" and the combo box is called "Status Case" and the value should be "Sent For Check" If the value in the combo box is different, then the back ground should change to red and get a message.This is the code I have so far that does not work:
Code: Private Sub Test__date_started__AfterUpdate() 'XXXXXXXXXX working onXXXXXXXXXXXXXX If Not IsNull(Me.[Sent_To_Check] And Me.[Status_Case] IsNot "Sent For Check" Then MsgBox "Status Case be set to Sent For Check!", , "Incomplete Form!" Me.[Sent_To_Check].BackColor = RGB(255, 0, 0) Else Me.[Sent_To_Check].BackColor = RGB(255, 255, 255) End If End Sub
I have a form I want to close but somehow the codes running before it cancel it out before my closing code can run.
Here is the full code for the form.
Code: 'Check for Null Fields If IsNull(Me.cmb_to_customer) Or IsNull(Me.cmb_from_customer) Then MsgBox ("Please enter a TO CUSTOMER and FROM CUSTOMER to continue.") Cancel = True
[Code] .....
This is the ending code that will not run:
'''''''''''''''''''''''''''''''' 'Continue or Not, If yes then wipe all fields, If no then exit form If MsgBox("Do you want to log-in/transfer more batteries?", vbOKCancel, "BATTERY LOG-IN/TRANSFER") = vbCancel Then DoCmd.Close acForm, "FRM_LOGIN" Else Me.cmb_from_customer = Null
All i want to do is after executing the following code, close the form " EmployeeFind" on completion?
Private Sub Form_DblClick(Cancel As Integer) On Error GoTo Err_Form_DblClick Dim stDocName As String Dim Msg, Style, Title, Response Msg = "Employee allocated to Job" Style = vbOKCancel + vbInformation Title = "Employee moved" ' Define title. Response = MsgBox(Msg, Style, Title) If Response = vbOK Then
In the main form I have a list box, when I right click on each item on list box another form "frmshortcut" (pop up) will be open in the position of mouse that shows a list box for selecting items according to below code, now I would like when select another place (except "frmshortcut"), this form automatically will be close, like what we have in shortcut list of windows. Now when right click it is opened in the location of mouse click, but problem is, it is not closed automatically when click in other places of main form.
Option Explicit Private Type POINTAPI x As Long y As Long End Type Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long Private mp As [*clsMousePosition]
I am using the method from allen browne [URL] .... to open a form and add it to a collection and when removing it it closes. actually, usually it does work so but i have now a form which does not close until i am hitting the reset button in VBE , is there something i could check why it's not functioning as desired ?
Just to add, this form has a subForm as well (might be the cause ?)
I have a subform that is used in multiple other forms. I wish to have a command button that will close whichever main form the subform is in. Is there some way I can make an if statement that is something like the following?
If (main form = A) then Close (form A) ElseIf (main form = B) then Close (form B) etc. End if
Unfortunately the button has to be in the subform, not the main form (which would be easier). The purpose of the button is to delete the current records that are open and then close the form. The catch is that the subform is the parent record to the main form, so the command has to originate from the subform so that the cascade delete works properly.
I have a form I would like to close without saving the record using a button. here is the code I have but it closes the form and it also writes the record to the table.
Code: Private Sub ClosewoSave_Click() Cancel = True Me.Undo DoCmd.close DoCmd.OpenForm "frmMenu" End Sub
I found in a thread that Cancel = True would not write the record.
I have a timer form which closes the database after a period of time with DoCmd.Quit. Another form is open at this point but if a user has left it in the middle of editing it I want to be able to save the record in the other form and close it before the timer form closes the database.
What VBA do I need in the timer form to save the record and close the other form before DoCmd.Quit? Just to be clear the code is...
Private Sub Form_Timer() On Error Resume Next Me.Tag = Val(Me.Tag) - (Me.TimerInterval / 1000) Me.Caption = "The database will exit in " & Me.Tag & " seconds" If Val(Me.Tag) <= 0 Then
my code does the following, user selects excel file, opens it, renames sheets, basically needs first sheet to be sheet1. rest don't matter Changes the formats in column a to number and 15dp, saves the file as .xls and then links the file to the database.
Code: Private Sub Command288_Click() Dim s As String Dim i As Long
I created a subform in side a form where I have some data. The idea is to fill in the row with a color if a value is met, like "Reset".Conditional format is working (for one field), but in Access 2003 I can only have 3, and I have like 6 values to choose from.I use the below code to no avail:
Code:
Option Compare Database Private Sub Form_AfterUpdate() If Me.Legend = "Reset" Then Me.Legend.BackColor = vbRed End If End Sub
I have to write a code in a form so that if nobody is doing any activity for 5 minutes then after 5 minutes automatically press Close button named BtnClose in that form.
(MACROS ONLY)I am looking for a way to open a form in order to add a new record. The idea is that I open up the form with a MemberID and possibly the name already filled in on the relevant form. It is merely for ease of use regarding the user.
I have got as far as opening the the new entry form. I just need to pass the MemberID into the relevant field. If I use the wizard it is just finding a record of a pre-filled entry.
One last one that's been niggling me - I just can't fathom the code... I bet it's very simple...
I have a Form ("frmJobSummary") that shows all the jobs for a customer - the customer is selected and the Customers ID is stored in a Control called "CustomerID" (It's just a number)
I have a button that opens up a new form... "frmEditJob" This allows you to add a job to a customer. I know how to get it to open up as a new record... but...
How do I get it to open up as a new record (or job) for the customer selected on the form "frmJobSummary"?
Here's the code so far... all it does is open the form with the Current record. :(
Your help is, as always, most appreciated!
Private Sub OpenNewJob_Click() On Error GoTo Err_OpenNewJob_Click
Dim stDocName As String Dim stLinkCriteria As String
I am fairly new to Access and trying to populate a text box based on whether other textboxes throughout the form contain a date or are null, so as I update the progress of work the textbox that I have located in the header will indicate the status of work flow, this is what I thought might work but I seem to be doing something wrong.
Code: Private Sub Form_AfterUpdate() Status = IIf([Date_Raised] Is Null, "New", "") Status = IIf([Date_Raised] Is Not Null, "Open", "") Status = IIf([Approved_Date] Is Not Null, "Approved", "") Status = IIf([Actioned_Date] Is Not Null, "Actioned", "") Status = IIf([Tested_Date] Is Not Null, "Tested", "") Status = IIf([Closed_Date] Is Not Null, "Closed", "") End Sub
1. I have a switchboard. I want to click a button, that opens a form with a dropdown list, when I make my selection, it opens a subform in add mode, but the linked field in the subform isn't empty, but filled with the mainform's field value that I selected?
OR
2. Is there a way for me to open a form in add mode, add data to it, click the add button (I will add an add button) that allows me to add again, but this time a particular field is not empty, but filled with selected info from previous selection?
Say for instance, I have 2 fields (both combo box fields), I click add, made selections for both fields, I click add again, but this time one of the fields stays constant like it's already been selected. It's filled with what was selected from before.
I am trying to open a word document with corresponding data filled from the text field of a form. I managed to get the word document but I don't know how to give a variable in word document.
I have a form with Date of Death (DOD) field. I would like update DOD from a table dbo_patient into Z_Patients table.
I have set the datatype as Date/Time in the form for Date of Death.
Code: Private Sub Update_DOD() Dim rcMain As New ADODB.Recordset, rcLocalDOD As New ADODB.Recordset Dim DOD As String rcMain.Open "select distinct PatientKey from Z_Patients", CurrentProject.Connection
[Code] ....
However I am getting some error Run-time error '-2147217913 Date type mismatch in criteria expression in section below.
Code: CurrentProject.Connection.Execute "update Z_MAIN_Processed_Patients set DateOfDeath = '" & rcLocalDOD!date_of_death & "' where PatientKey = " & !PatientKey
I have two problems excel instance does not close at the end and two when I try to do the looking using text it works but soon as I try using date/time it returns nothing.
Code: Private Sub Command84_Click() Dim objExcel As Excel.Application On Error Resume Next
Is there a way to run code to see if a query is open? Then if the query is open, program the database to close it and re-run it?
I have a query that is based on a field on my form. It runs fine the first time. However, if the user leaves the query open and goes back to the form, makes a new selection, and clicks the button to open the query, the query doesn't refresh. The user either has to close the query and re-run it or press the Refresh All button. I need a way for the query to refresh automatically if it is open already or not. The only other alternative I can think of is to program the database to close the query and re-open it. I tried using QueryName.Requery and QueryName.Refresh but in both cases, it tells me that an object is required and I don't know what it wants. I also tried setting the query definitions using VB, but the query is apparently too long because no matter what I do, I can't get it on one line and Access doesn't seem to like it if the query takes up two lines.
i want that if any powerpoint application is open after closing my access app all of these powerpoint files will be closed. i found this code for excel file and i changed it for powerpoint application. but i have an error message in this pink line?
error 438: object doesn't support this property or method
Code:
Public Function test() Dim oApp As Object Dim workbook1 As Object