I would like to have the form to be set to its current record when being requeried. How can I easily achieve this?
I've seen things about recordsets, I'm working with ADP (based on SQL Server) and don't know or all DAO events will help me.
What I really need is for when the form opens, it looks at todays date, then matches current user and then goes to that record for today, if no current user there, then will goto new record..
i know, sounds complicated, and probably is really easy, but my heads not with it today, as about to get drunk as its my 40th, and got people ringing and texting and still trying to get this done....
I've included a copy of this database, named Timecards..
I have a subform where the user enters the number of training days on a quotation. After the record is updated I do a requery on a text boxt on the main form that shows the total number of training days ordered for that particular customer.
The problem is the focus then resorts to somewhere else on the main form but I want it to return to the same record on the subform. I have managed to get it to go to the first record in the subform but obvisouly from users perception that is not god enough.
I have got the following code in the sub form's after update event but nothing seems to work although I do not get any errors.
Private Sub Form_AfterUpdate() If Me.TrgType = 1 Then
Dim rs As DAO.Recordset Dim varBookmark As Variant Set rs = Me.RecordsetClone rs.FindFirst ("QuoteItemID = " & Me.QuoteItemID) varBookmark = rs.Bookmark Forms!frmCustomer!txtUnitsOrdered.Requery Forms!frmCustomer.Refresh Me.Bookmark = varBookmark Me.QuotedPrice.SetFocus rs.Close Set rs = Nothing
I have a Main form that has button that loads a new Pop Up form for entering new data that will display in the Main form. When all the data is entered I click on a button that Saves the data and exits the form and then runs Re-query on the main form returning to the record that was current before the requery.
I have the following code:
Private Sub cmdSaveTradeAndExit_Click() DoCmd.RunCommand acCmdSaveRecord 'Save the current record DoCmd.Close 'Close the current form Dim CrId As Integer CrId = Forms!frmTransactionMainActivePopUp.CurrentRecord Forms!frmTransactionMainActivePopUp.Requery DoCmd.GoToRecord , Forms!frmTransactionMainActivePopUp, acGoTo, CrId End Sub
But I am getting the following error:
Run-time error '2498':
An expression you entered is the wrong data type for one of the arguments
I have a continious form where each record can be edited. After editing a record the form does a me.save and a me.requery (is important). After this it jumps back to the first record (seems logical), but how can I write a code that he goes back to the 'previous edited record'.
I have a combo box called Combo9 in form NavigationF, the combo box displays the results of FollowUpQ Query. What I would like to do is when the user selects a row from the combobox is closes NavigationF and opens ContactHistoryF and goes to the record selected in the combo box. I have made sure that the combobox contains CustomerID which is the primary key for my table.
Hope this is a nice and simple one. I know I have seen various "last record" references in various threads but I couldn't find one in a search.
I have a command button on my form which navigates you to the next record. I use this rather than the navigation buttons as I can set the tab order to go to it after all the fields are filled. This works fine unless the form is on the last record, in which case it throws up an error. To get round this, I want to test that the current record is not the last record.
It is the test in the If statement I need help with. How do I check that the current record is not the last record in my form? I think it will use the dcount but I don't know how.
Private Sub cmd_Next_Record_Click() On Error GoTo Err_cmd_Next_Record_Click
If (current record < dcount) then DoCmd.GoToRecord , , acNext Else DoCmd.GoToRecord , , acFirst End If
Exit_cmd_Next_Record_Click: Exit Sub
Err_cmd_Next_Record_Click: MsgBox Err.Description Resume Exit_cmd_Next_Record_Click End Sub
:confused: Have not worked with access for a long time am trying to update an oldie. Main form has a sub form. With each new service to customer I select next on the sub forms navigation button. 1 customer might have 6 records on his sub form and another might only have 2.
Problem is that when viewing reports of these visits I need to work on the last service record whereas my sub form always opens to the first record and this is the date read in the reports.
I know it isn’t difficult but I have spent hours on it without success How can I get the databases to open with all sub forms at last entered record? Can anyone help ?
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.
I have inherited a buggy database thas has a simple piece of code that won't behave the way I think it should! The code should add a new record and have that new record appear on the list form (where the button On_Click event is called) making it available for user edditing. In 99% of cases though, the blank new record does not appear. The record is getting created, as i can see it in the table and have added a watch to the RecordCount property, it just doesn't display automatically. The existing workaround for users is to click a second button that invokes a simple one line function sub that performs only a Me.Requery. The user presses that up to two or three times before the new blank record finally appears.
One solution I read about, but hesitated in trying due to the unprofessional 'flash' that occurs, was to close the form and the re-open it...anyone experienced this or can comeup with a neat workaround?
The code
Private Sub CmdAddRule_Click()
Dim db As AO.Database, intnextseq As Integer Dim TestThis As String Set db = CurrentDb() Dim rstDao As DAO.Recordset Set rstDao = db.OpenRecordset("select * from stblAllocRules order by intRUSequence desc;", dbOpenDynaset) If rstDao.RecordCount > 0 Then intnextseq = rstDao!intRUSequence + 1 Else intnextseq = 1 End If With rstDao .AddNew !AutRU_id = 0 !intRUSequence = intnextseq !bytAppendBack = 1 !bytUpdateBack = 0 !bytDeleteBack = 0 .Update .Close End With
Set rstDao = Nothing Set db = Nothing
Me.Requery Me.Repaint 'I have used this staement in addition to and instead of the Me.Requery to no effect Me.Recordsource = Me.RecordSource 'I have used this statement also in addition to the above to and in isolation, to no effect. End Sub
I am trying to go to a specific record in a recordset (on a form).
In the past I as using the typical open the form and use the filter to go to the specific record:
strLinkCriteria = "Where ID = 5"
Docmd.openform "frmName", , strLinkCriteria
This takes me to the correct record, but filters the form down to that one specific record. The users instead would like to go to the specific record, but be able to see all the other records for the form correctly.
One: I've done this before but I lost the code (and I've been away from DB for a while so I'm very rusty)
I have a form with many records, and in the header of the form, I have a combo box based on the PrimaryKey of the form. I want to select the record from the Combo box and have the form jump to that record.
Two, while actively entering new records into the form, I need the combo box to update to include all entries.
I have a tab control with 11 pages (departments). Each page have 3 subforms (country, channel, product). Each page can have multiple countries, channels and products.
Example: Marketing: Country A, Country B and Country C Country A: Channel A and Channel B Channel A: Product A, Product B and Product C
So a combination can be: Marketing in Country A in Channel A with Product A.
I enter several informations (sales, dates, comments etc) on each subform. The subforms are linked (master/child). I store the different primary keys in hidden textboxes.
When I navigate between the pages, the selection resets due to a necessary requery. How can I keep the selection?
Is there a way to search for a term within a form and goto a record that matches that term assuming there was only one matching result (Unique ID, for example).
But NOT filter the results so that user can still navigate as usual after the search has been carried out.
I have created Command buttons on forms with VBA code. Records GoTo previous and GoTo Next Record so both of working is good. But Next Record command is force to a new record. If suppose when we clicking on last record. It is go to new record without any message. So No need to force a new record with Next Record Command. Only just move to next record if there is no records show a message. Below mentioned both VBA codes so there is any changes on GoTo Next Record Code?
VBA Code: Go To Previous Record : DoCmd.GoToRecord , , acPrevious Go To Next Record : DoCmd.GoToRecord , , acNext
I'm looking for a simple routine, preferably in the On Key Down or or On Key Press event of a form to quickly navigate to a record based on the key pressed.
I have a form with names in a table layout (continuous form).If the user is on the name field, I'd like it to navigate to the first record that contains first letter of the key pressed. So if a user presses "K", the form will go to the first record that starts with a K.Yes, the names in the form are alphabetical, but in a list with over 100 names, this could speed things up just a bit and save a lot of scrolling and looking.I was thinking of using KeyCode and I already have an event to navigate by the arrow keys so I'm considering building on that.
Code: If KeyCode = 40 Then ' Down arrow DoCmd.GoToRecord acForm, Me.Name, acNext ElseIf KeyCode = 38 Then ' Up arrow DoCmd.GoToRecord acForm, Me.Name, acPrevious End If
I am thinking to use a Select Case and add the key codes for all the letters.
I have a form and subform. The subform is connected to the form and display all BandID's associated with that record. What i want is the ability to click on a record in the subform so that it automatically set's that record in the form for editing.
I want substract from 9/20/2014 totreg40 - reg = ovt but when reg=0 the remainder subtract from 9/19/2014 (previous record) totreg40 - reg = ovt, etc. The sum of reg = 40.
After appending data in a table, I open a particular form. I want to display only the last record. I've added the code (DoCmd.GoToRecord , , acLast) to the On Load and On Open properties without success (opens first record).
I have a form (frmAddManifest) with a subform (subfrmManifestTransporters).
When creating a new record, I can enter data into frmAddManifest, but the subform doesn't update to link with the record - I presume it's because the record from the main form hasn't been completed yet.
Is there a way to requery the form and/or subform so it stays on the record I was working on, and link the subform properly?
I have a Contacts form which has a Calls sub-form which itself has a Subjects sub-form. From the Contacts form the user can click a button which writes a pro-forma letter from a selection. The application then updates the Call & allows the user to select the Subject(s) from the Subjects available (drop-down menu). If the user wants to write a second letter immediately, I get the above message. If they do anything else first, they are OK. I have tried refreshing the Contacts form & each of the others at various points in the process, explictly saving the record (caused another error) etc. without success. Can you help?
I have a table called tblFinishedGoods. There are 3 fields in the table:Serial Number, Model Number and Location.
I would like to have a form that will take input from my barcode reader and input the data for the 3 fields, if the serial number is not already in the table.(I have this already working). But now I would like the same form to also check the table for any serial number that is scanned in...and if it is in the table already, have it bring up the model number and location for that record.
I'm thinking maybe there is something I can do with Serial Number afterupdate. Basically I'm looking for a way to not require the user to input anything via a mouse or keyboard.
If the 1 form could accept the 3 scans:Serial Number,Model Number and Location, and either 1)enter a new record if that serial number isnt in the table or 2)find that the serial number already exists and overwrite the model number and location with whatever the next 2 scans are.
I have three objects a Main_Table , ClientDataForm and a MapForm all three share a common ClientID number
From that Main_Table I have created a ClientDataForm form which I enter all Data
From ClientDataForm I wish to create a button on it which runs a Macro that Saves ClientDataForm Record and then populates another form named MapForm with whatever record is currently open in Form One whether a newly created one or previous record.
How would I write this code for that button? Also why I would write it that way?
I have a form in access that opens to the first record every time. This form will be constantly updated and i was wondering how i can set it, so that it opens up to a new record everytime you open the form.
I would like to create the following functionality on a form in my database:
When the form is open, and a record is displayed on the screen, I want to add a button that will open up a second form displaying information related to that record.
To be specific, I have a form called "Contracts". Each contract record contains a customer name in the field "Customers." I want to create a button labeled "Customer Details" that will open a new form, "ViewCustomers" displaying the record associated with the value entered in the "Customers" field for the current (displayed) record only.
I have been trying to use a hyperlink to a macro that uses "OpenForm," form name "ViewCustomers," but I don't know how to filter it down to just the current record.
I hope any of this makes sense. Any insight would be really helpful.
on a form with several subforms i have ran into some trouble. I have the subforms use code to determine if a scrollbar is needed. As a recordselector I use a listbox on the main form.
When i close the mainform, it sometimes makes a popup box appear saying that there is no current record.
Sofar I have determined the following :
- Removing the code from the form, removes the error.
- The code is only executed when selected records in the listbox have related record(s)
- The error only occurs when the code is executed at least once and the last selected record has no related record(s)
I dont know if altering the code would have any success, cause it won't run anyway when I select the last record (with no related records).
I guess moving the code to another section would be better, but I've tried other options like 'on focus' etc, but could not find one that responded.
HELP PLZ :)
Private Sub Form_Current() On Error GoTo Error
'kijken of verticale scrollbar nodig is maxRegels = 14
Dim rstCount As DAO.Recordset Set rstCount = Me.Recordset If rstCount.RecordCount > maxRegels Then Me.Form.ScrollBars = 2 Else Me.Form.ScrollBars = 0 End If
Error: If Err.Number <> "0" Then Else MsgBox Err.Number & " " & Err.Description End If Exit Sub
End Sub
ps. I've tried to catch err.Number = "3021" in the Error: section, but without success