General :: Error In ID Field Of Form - Cannot Add Or Change A Record
Aug 6, 2012
I'm setting up a college database. On my enrollment form i have the following fields
Enrolment_ID
Student_ID
Course_ID
I'm receiving the error in my Student_ID field. It's telling me a related record is required in my Student Table.
The drop down shows the student name/date of birth/Education number
But if i set it to just show the ID it works fine, is there a work around for this as it will make life a lot easier for the dropdown to display the student names rather than the ID?
The dropdown is based on a query i have of accepted students....
How do I change a txt box to a memo field on a form? (I need to allow for more than 255 chars...) I've already set the backend DB (sql server) to accept the many chars, and the linked table access see's the datatype as memo. But I can't figure out how to get a memo field on the form, or how to change the current txt box to a memo control to support the extra characters.
I've been looking for 20 minutes... I guess I never used a memo field before, since I can't find/see how to set this.
in a continuous form i want to click on one record and have the one field change the background colour to highlight it. When I use the code: Field. BackColor = vbYellow it changes the background on all the records. Is there a code to say only for the record with focus?
I have been working on a bound form that I can't seem to get working.
It records deliveries and what I am trying to achieve is after the form has been filled in the user will click a save button where the record will be added to the table and a record automatically printed via a report and emailed to the shop manager, but i keep getting the error "No Current record" no matter what way I try to do it, I have tried using to run the report. Is the best way for me to accomplish this o change it to an unbound for and run an insert query on click?
I have attached a copy of what I have been working on : DatabaseDelivery.accdb
I wish to change the backcolor of a field on a current record being dispalyed in a 'multiple items' form. However when using me.A.backcolor = makes refrence to all fields called A on the 'multiple items' form and therefore all fields change colour not just the current record.
I am getting a "cannot change or add a record because a related record is required in table 'tblOrder'". I have scoured this site so forgive me if there is a post already on this.
My Order table has:
OrderID CustomerID SalesTaxRate
My Order detail table has: OrderDetailID PoNumber TransDate ProductID OrderID QuantitySold QuantityReceived QuantityOrdered TransType
I wasn't sure if by this you could point me in the right direction as to why it is saying this. I am very new to Access so bare with me. Thanks
I have set up a simple switchboard that gives the user a choice of 2 forms. The second from allows the user to navigate through a questionaire for a particualar individual. I have set up some buttons to advance thru the questions and answers. When I reach the end of the dataset, I get the error message "You can't go to the specified record." I also get this message when I am on the first question and try to page backwards. Is there a way to change this error message to something more meaningful to my users - like "End of questionaire" or "Beginning of questionaire"?
I believe I did this before awhile ago but for some reason I keep getting an error.
I have a Mainform (frmMain) that has a Subform (frmSub). On frmSub I have 2 comboxes (strCom1 & strCom2) one is set to invisible (strCom2.Visible = No).
So using the "On Open Event" of frmMain I want make strCom2 visible if strCom1 = "Read Only". Ofcourse I will also need to place the vba on the On After Update event. Below is what I have so far but doesnt work.
I get Run-time Error 2427 "You enetered an experssion that has no value"
Code:
Private Sub Form_Open(Cancel As Integer) If Me!frmSub.Form!strCom1.Value = "Read Only" Then Me!frmSub.Form!strCom2.Visible = True Else Me!frmSub.Form!strCom2.Visible = False End If End Sub
VBA syntax for changing various "Field Properties" on an EXISTING table. Specifically, the field properties I'm trying to change are:
Field Size (I want to make this 'Double') Format (I want this to be 'Standard') and Decimal (I want this to be '2') The Data Type is already set as 'Number'.
I am trying to copy a record as new record in vba in access so i make a button for the user so that they can copy a record each time and change a certain field if they wanted. How would i do that.
In my database i have a field for Tonnage (quantity) ...
I need for example to input 38.60 or 37.89 so my values must have 2 decimal places, ive searched and found changing my field type to double or decimal should solve the 'numbers rounding up/down' but access will not let me change the data type?
BUT IT JUST GIVE ME THE VALUE LIKE A NUMBER SUCH AS e.g. 50 ,150 but instead of that i want currency data type of that calculate field for e.g. 50 become "$ 50".
Okay so in able to do that i go to properties Sheet of the field of the query and change Format to Currency ..BUT IT DOESN'T CHANGE !!!
The following code is used in calculating the due date for actions. The due date for each action is calculated from a preceding action date, by adding a defined number of days. The relationship between the actions is defined by assigning the predecessor/preceding action.I am trying to use a nested loop to firstly assign the criteria data agaisnt which the rest of the record set must be checked in order to determine if the criteria data is a predecessor and than to use the predecessor's information to calculate the due date for the record being checked. I keep on getting a no current record error at the .edit inside the nested loop.
'**Calculate action Dates
Public Sub CalculateDates() Dim db As DAO.Database Dim rs As DAO.Recordset Dim strSQL As String Dim NumOfRec As Long Dim CritCounter As Long Dim EvalCounter As Long
I was trying to run the front end on the 6th pc and this error "You cant go to the specific record. you maybe end of a recordset." showed up. But no such problem for the others.
how to make my form controls change size / position as my form is resized / loaded on a computer with a different resolution. Several of the tutorials out there suggest putting code on the "on resize" property of the form. When I looked at the Northwind database to try to mimic their code however, it looks like they must be doing something different as there is no on resize code under the form properties and I was unable to find the code they do use.
What I want to do is following. In form ASSIGN(fields are takedate and inout) ,if TAKEDATE is different then 0 then set value of inout field to 1 My VBA knowledge is poor cause i dont think this should be hard
I have a subform with two fields [status] and [process], i am trying to get the backcolor of procces to change to red if the status field contains the text "expired".
I have tried vba. plced on the after update
if me.status = "expired" then me.process.backcolor = vbred else me.process backcolor = vbwhite end if this
Changes the color of the field [process] but also all process field colors to red even if the status field does not contain "expired".
I think conditional formatting is the way to go but i think i need an expression to complete this.
I have a database which has a main form and subform built in linked by parent/child customerid, what i would like to do is search all the subform records from the whole DB and return its parent record on the main form?
Can this be done? because if i use find it will only search the filtered form i have onload of the form?
I have a main form that has 10 sub forms Each sub form’s record source is link to a different Query.
It takes more then a minute to open the form, (because it’s running the query for all sub forms). So I changed the sub forms source to SELECT * FROM tblTest WHERE false;
I also changed the main form. When the button on the main form is clicked, it’s adding the following:
Me.SubMySub.Form.RecordSource = "select * from qMyQuery" Me. SubMySub.Form.Requery
However, after I close the main form, the sub form’s record source stays linked to SELECT * FROM qMyQuery;
And will take the same long time again to open the main form.
I have another question about ACCESS forms. With VBA, I want to change the record showing when I open a form. I see there is a member "CurrentRecord" so I tried in the class module
Me.CurrentRecord = 2
I compiles but gives runtime error that is write-protected and cannot be changed. In the ACCESS help I read you could do it but HOW?
What should I do ( I am using ACCESS 97 ) ?!
Thanks in advance
Victor
PS : Is it true that VBA in newer versions of ACCESS has more features/functions etc?
hi I want to set record selector on the form with a record number that I am founding it with this code: Code:Dim con As ADODB.ConnectionDim cmd As ADODB.CommandDim rst As ADODB.RecordsetSet con = New ADODB.ConnectionSet cmd = New ADODB.CommandSet rst = New ADODB.Recordsetcon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & CurrentProject.Path & "hazineh-bime.mdb" & ";Persist Security Info=False" cmd.CommandText = "select * from table1 where salp=" & Val(Trim(Form_mainhazineh.sal.Value)) & " and mahp=" & (Trim(Form_mainhazineh.mah.Value)) & " " Set cmd.ActiveConnection = con rst.Open cmd, , 1, adLockReadOnly If rst.RecordCount = 1 Then ' found the record else end if I mean I want to change the active record on the form with another one . how can I do it?