I have a form with a couple of sub forms, one of the sub forms only has a check box and a txt field and both are required before moving on to another record.
I have this following code that works partly, but it only works if one of the fields have info entered. It doesn't however stop the user from tabing through the sub form without entering 'any' data in either one.
---------------------------------------
Private Sub Form_BeforeUpdate(Cancel As Integer)
If Trim(Me!txtContactAgentName & "") = "" Then 'Validate Name Field
MsgBox "Gotta Enter Your Name!"
Me!txtContactAgentName.SetFocus
Cancel = True
ElseIf Me!ynCCContactLogLeft <> True Then 'Validate CheckBox
MsgBox "Gotta Have a checkmark in Logged!"
Cancel = True
End If
End Sub
---------------------------------------------
Also the below throws up an error when I know it's got all the correct information.
------------------------------------
Private Sub txtContactAgentName_LostFocus()
Forms.frmAllCustInfo.SetFocus
Forms.frmAllCustInfo![AddNewCustomerRecord].SetFocus
End Sub
I have a form (called DeliverableDescription ) that has the following buttons: close, and save the main from has a sub form (called DeliverableDescriptionsubform) that is viewed as a datasheet also I have a table called DeliverableDescription that has three columns (outline number, name, and group number)
the DeliverableDescriptionsubformshows data from DeliverableDescription (only the outline number and name) this DeliverableDescriptionsubform is used to update the DeliverableDescription table (through copy and paste from another source)
what I need to do is populate the group number column when the DeliverableDescriptionsubform is updated the group number is just the first part of the outline number (i.e. if the outline number is 20.45.35.1.4.9 then the group number is 20)
I want to create a command in the save button that takes the string value of each item in outline number column and do some simple string manipulation to it then populate the group number
my approach is to have a select query that gives me all the outline number then through a loop iterate through each one, performing the string manipulation and update to the table.
my question is how to access elements in a sub form, since the save button is in the main DeliverableDescription form also is there a better way to do this?
thanks for any help you might be able to offer.
Code:Dim ws As WorkspaceDim db As DatabaseDim rs As RecordsetDim OutlineNum As StringDim queryResult As StringDim returnResult As StringDim SearchChar As StringDim Pos1 As IntegerDim TotalLen As Integer OutlineNum = "SELECT DeliverableDescription.OutlineNumber " & _ "FROM DeliverableDescription " Set ws = DBEngine.Workspaces(0) Set db = ws.OpenDatabase("N:statusReport_Test.mdb") Set rs = db.OpenRecordset(OutlineNum) Do While Not rs.EOF queryResult = rs.Fields(0) TotalLen = Len(queryResult) SearchChar = "." Pos1 = InStr(queryResult, SearchChar) returnResult = Left(queryResult, Pos1 - 1) DoCmd.RunSQL ("Update DeliverableDescription SET DeliverableDescription.TeamLeadNumber = returnResult " & _ "WHERE DeliverableDescription.OutlineNumber = OutlineNum ;") queryResult = "" SearchChar = "" Pos1 = 0 rs.MoveNext If rs.EOF Then Exit Do End If Loop DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
I use a Frm1 which updates my Tbl1. By clicking on this Bt1 of the Frm1 the record is duplicated on purpose having enabled and disabled fields. While Frm1 shows the duplicated record (so it is open) I can change it and save it as needed. However the Frm1 loads having an enabled Cbo1 which normally allows the regular user to pick any value A,B,C or D.
What I would like to have is a line code under the Bt1 click event able to set the value "D" on the duplicated record only. I can not write it under the load form event because I need value "D" set on the combo only when I click the Bt1. Regular user still should be able to select between A,B,C or D when he loads the Frm1 to input a new record.
I tried Me.cbo1="D", also tried Me.cbo1.column(1)="D" under the Bt1 click event and both of them failed. What have I done wrong? How can I get it done?
Need Help... I deleted a field (Senority #) in my table and so on with the queries, forms. reports that had that field. I redone my query so that it would calculate my senority (thanks to all that helped). When I went back into my form that previously had the senority field I could not edit or change anything. All I got were beeps. I do not have any locks on the text boxes, combo boxes, forms, ect. Please help!!!!
I have created a database with other to log my clubs sports score by player etc. what I want to do is to create and email form that I can email out so other club captains can send me their scores and info to add to my database.
I do not want to use excel, I just want to know if this is possible using out look to send the email.
There are multiple tables that will need updating. Via the email form. Basicaly the main database entry form i need to create a query or vba code to allow all the fields in that form to be updated via email.
I have a Form called Products. Each product is uniquely identified with a primary key called [ProductID].
Products contains a calculated field called [UnitsOnHand]. [UnitsOnHand] gets its values from a subform called ProductTransaction that exists within the Products Form.
ProductTransaction contains a field callled [Received] . At the moment [UnitsOnHand] will add up all the values it finds on the [Received] field to derive the [UnitsOnHand] value for that product at any particular time ie =Sum(nz([Received])) on [UnitsOnHand] .
I also have a Query AutoSell that outputs a value for each [ProductID]. How can I use these values for each [ProductID] generated by the Query to substract from the values on the [UnitsOnHand] calculated field on the Product form.
In one form, I have to click on button that opens the other form. Each form is bound to its table and those two tables are linked by Primary [RaDAR_Id] and Foreign [radar_id] fields. I would like the code to:
* open the other form * move to the first record that has [radar_id] = [RaDAR_Is] if exists
If there is no any record in the other form that contains [radar_id] = [RaDAR_Id] then I want to create such record. So I am using the code (below). The problem is that the other form is not being updated.
Code:
Private Sub cmd_edit_usage_Click() ' DoCmd.OpenForm "frm_edit_usage" Dim lngRadarId As Long Dim patientId As Long Dim rsUsage As DAO.Recordset Dim rsUsageWrite As DAO.Recordset
I have an Access 2007 database. I have added in a LastUpdated field into my form, which will update when the record is altered. After searching around I was able to find this VBA:
Private Sub Form_BeforeUpdate(Cancel As Integer) Me![LastUpdated].Value = Now() End Sub
This VBA works, however my problem is that when I try and switch records, using a combo box (which I made from the combo box wizard selecting the "Find a record on my form based on the value I selected in my combo box") I get Run-Time error 2448.
Hello can anyone help me with a code or application example of how to hide all db elements. I have a database and i want only a main form to appear for users and tables, code, etc to be hidden.
When I add new records to the form and close the form, the tables are updated with the new records, but the new records don't show in the form (navigation).
Parent form/table, with a subform (separate table, 1:M link on "ID") The parent form data stays fairly constant (occasional change/update), with multiple entries in the subform for each parent record which are added to more frequently The master table has a field "last interaction" which I need to update whenever a new entry is made in the subform/subtable It updates fine when I change an entry in the parent table/form, but not when I add a new subentry for that parent
I have a continuous form with an SQL query as its record source, it is a dynaset. Each row on the form is for a specific picture, containing a unique ID, a pre-generated caption field, and an official caption field. The idea is that users will edit the pre-generated caption field, hit a button, then their changes to the pregenerate caption will be made to the value of the official caption field.
My VBA code for the button works fine, in that it doesn't return any errors. The problem is that there is some sort of delay between when the button is hit and when the official caption field is updated. After the first press, the form requeries and the official caption field is the same, but after a second press the official caption field will display the user's changes.
First, a recordset clone is created using an SQL query, the pre-generated caption column is selected and then the results are filtered to the single record that shares the picture ID of whatever row the user was working in. Next, an SQL update runs, replacing the value of the official caption field with the value of the pre-generated caption that is contained in the recordset clone. Then the form is requeried.
I've tried adding a change of focus at the beginning of the code and a 15 second pause between when the update statement runs and when the form is requeried, neither solves the issue. The problem can't entirely be my code, because a second press of the button will make the appropriate changes.
I know what you're thinking, why have divide the captions into pre-generated and official in the first place - why not use pre-generated caption as the caption source? There is a separate feature that allows a user to mass edit captions and I decided to retain the original pre-generated caption as a field, in the event that the user makes a mistake or decides to reference the content of the pre-generated caption.
Displaying the 'Last Modified' dates and time on a form. How to go about doing what I want to do.
I would like to display on a form in one single field the date & time that any of the fields on that form were changed and. I would like to display it in such a way that it cannot be altered by anyone. If it is possible to capture and display on the form in a separate field which user account accessed and changed the record then all the better. Obviously if nothing is updated then the date and time stays the same.
I will have to create two new fields in the table that relates to the form and this I have done - one of format Date/Time and one of format Text.
I was hoping someone could let me know how I can convert my MS ACCESS database file (.mdb) so that when user(s) run/open the database, they cannot see, nor have access to the tables (which are linked from a separate DB with just the tables), forms, queries, etc... (the elements). Right now, you can open the file, the switchboard runs, but you can still see and navigate to the tables/forms/queries seen in the background.
Is there a quick and simple way to turn this into an executable-type file where you cannot see the elements in the background?
I wonder wether it is possible to copy elements from one database to another. I have two copies of the same database. One for development and one for user access. If i for instance would like to copy a form from the development database to the other, how can this be done?
Hello to all. The problem that I am faced with is that I have a master list with all the current users and an updated list with all the current users and new users. What I have been asked to do is to compare the information in these two tables and have been given the following steps. 1. If name (surname, first name) exists in both lists do nothing.
2. If name exists in Update list but not in Master list then insert a blank row in the Master list and add the following Update list fields to this row: ¨ 3. If name does not exist in the Update list then remove the entire row that contains that name from the Master list. 4. If 2. condition ("name exists in Update list but not in Master list") below applies, then insert the blank row with some kind of marker (e.g. "*") in a column on the far left. This will allow us to distinguish between:
So that is what I have to do can someone please tell me what a quick to do this in access would be. Thanks
I'm running into an issue with my forms. I have a form that contains a subform, that contains a list of projects. This list is read-only. To update a record, you can double click on it, which opens another form filtered on this record, and which contains the fields in the first form as well as some others.
I have a command button on that last form to "Save and close", which fires up a macro that saves the record and closes the window.
Now, the issue that I'm having is that, when the window closes and I'm once again in front of the first form with the list of projects, the values of the record I changed are not updated and when I click on another record, Access tells me there's a conflict in the values and asks me if I want to keep the changes, discard them or copy to the clipboard.
It seems to consider the old values from the first form as a change, and thus asks me which to keep between these, and the actual (proper) changes I made in the dedicated form.
For the proper changes to be applied, I need to select "Drop changes".
I tried to requery the first form, also undo the changes to it after closing the window, but none of that worked.
I'm actually basing this on one of the templates, which does exactly what I want and which obviously works...
I Have made a change to a field in my tables. it was was based on ethnic background and originally i had just created the field but had not added in the options ( via adding it into the row sources).
So now the tables field have been updated but unfortunately on the form it has not updated into the dropdown i had created containing the options..
In my Access 2010 database there is a form with a large number of checkboxes enabling me to select/deselect certain record details.
Each click on one of the checkboxes triggers a VBA routine setting true/false values in one of several tables linked to the main table.
A query over all records is filtered by the true/false values of the linked tables and the resulting set of records is displayed in the (continuous) form.
The header of the form contains a text field with the value "=GetRecCount()" displaying (correctly, but randomly fast) the number of records selected:
Code: Function GetRecCount() As String Dim NumRecs As Long Dim rs As Object On Error Resume Next Set rs = Forms![Super Search].RecordsetClone rs.MoveLast NumRecs = rs.RecordCount Set rs = Nothing GetRecCount = Format(NumRecs, "##,###") End Function
Now, the funny thing is that each click on one of the boxes results in 1 call of the VBA routine setting table values, but 21 calls (!) of the text field "=GetRecCount()" in the form. I have established this by incrementing a public variable at each pass.
Why a field in a form is updated 21 times when a filter is applied?
Once again I am stuck. Basically I have a query as followed:Current: Sum(IIf([Run_date]-[dbo_GD-AgedDebtors]![BillDate]<=30,[dbo_GD-AgedDebtors]![Outstanding],0))I'm trying to show outstanding bills if the bill date is less than or equal to my date parameter. However, it keeps coming up "This expression is typed incorrectly, or it is too complex to be evaluated. For example, a numeric expression may contain too many complicated elements. Try simplifying the expression by assigning parts of the expression to variables. (Error 3071)"
I am trying to find a way execute various "like / is not like" commands on a field within a table. Rather than build 30-40 different "like / is not like" commands to execute on this specific field, I would prefer to have one "like" comand and have it's elements listed in a reference table that I can call into the "like" commend or function.
In this way I can change the "Like" statement filtering criteria by simply adding or deleting filter elements from the reference table rather than have to modify the "like" command's hard coding.How to do something similar, perhaps using a different function or macro?
I'm creating a catalog that shows all the equipment we use in our company. The problem is that most of these equipment don't have the same properties, or fields. For example, all of them have a code, model, supplier and price.
However, most of them have different properties like size, orientation, or material.My first attempt was using one-to-one tables.
My database is formed by a main table (catalog), a type table (which lists all the types of equipments the table has, e.g. control valves, tanks, field instruments, etc), and smaller tables for each type of equipment (the table for control valves has the size and material field; the table for tanks has connections and orientation field; and the table for field instruments has the fields of dial size and connections).
All of these small tables are connected to the main table using a one-to-one relationship.My question here, any better way to store and access these type of data.
I have an unbound listbox with 3 columns. Call it PeopleBx. How can I address the item in the first row and first column. How can I address the first column in the selected row and how can I address the item in row 3 and column 2. I tried with