Can You Populate Table From Recordset??
Oct 28, 2004hello there,
just curious if it was possible to populate an empty tables' fields from a recordset that had been defined earlier in VBA under the criteria of a bit of sql code?
cheers.
hello there,
just curious if it was possible to populate an empty tables' fields from a recordset that had been defined earlier in VBA under the criteria of a bit of sql code?
cheers.
hi all,
not sure if this is the correct forum but here goes. is it possible to have a disconnected ADO recordset populate a combo box in an Access Project (.adp)? i have a Access XP front end piping back to a SQL Server 2k dbase. i'm using a stored procedure to handle my insert, however i have a couple of combo boxes on my data entry form that i need to populate on the form's "OnLoad" event. i was wondering if i can populate these using a disconnected recordset (similar to functionality of the dataset object in ADO.NET)?
if not any ideas of best practices to populate combo boxes and limit connection resources?
many thanks for any suggestions.
Hi,
I am trying to populate a recordset in
Access97 using the following code, but cannot
seem to get it to work.
The table name is "EventData" that has Type and date fields.
startdate and enddate are text boxes on a Form, for wich the user
enters the date range, and then clicks a command button to
build an Excel spreadsheet on the fly that will be populated with the
results of the recordseet.
here is the code:
Dim db As DAO.Database
Dim rst As DAO.Recordset
strSql = " SELECT EventData.EventType, Count([EventData].[EventType]) AS [Num Occurrences] FROM EventData WHERE ((EventData.Date) >= (Me!startdate)) GROUP BY EventData.EventType"
The error message that I am getting is "run time error 3061", too few paramaters. ALSO not sure if I need a semicolon right before the closing quote of strSql.
Any help is appreciated.
So Im trying to populate the listbox using string connection and having this error: "the object you entered is not a valid recordset property"
here's the code:
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Set cnn = New ADODB.Connection
cnn = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=xxx;DATABASE=xxx;Port=xxx;USER=xxx; PASSWORD=xx;OPTION=3;"
[code]....
Where is the error??? am doing right or is there any better way to populate listbox from string connection.
Can anyone help me to create an accumulative balance in a table if the invoice is the same. For example:
Inv # Transaction Amount Balance
123456 10 10
123456 20 30
123456 15 45
321654 10 10
321654 35 45
321654 10 55
Thanks
Is there a way that i can put an ADODB.recordset in a new table using VBA in MS access 2013? The record set is dynamic, hence a new table should get created every time.
View 1 Replies View RelatedSpecial situation: The SQL Server Linked Server across the country is linked to a Read Only Oracle DB. This data pull works perfectly and populates the Subform.
The problem is that Oracle can take 3 to 6 seconds to retrieve the single record depending on the network traffic through a small pipe.
The code below shows the RecordSource for the SubForm. clicking on a list box supplies the value. Then 3 to 6 seconds later, the subform populates.
The actual Recordset for this Recordsource is needed to conduct Validation on each field. Normally this would be on SQL Server, I might just create a Recordset Oject and run this SQL statement again in 1 milisecond. In this case, it will probably take an additional 3 to 6 seconds. Avoiding another lengthy round-trip to Oracle would be prefered.
Goal: How does one grab, clone, or other wise reference the existing recordset for the SubForm?
Note: Immediate Window - One single field can be returned quickly
There are 48 fields that need validation - is there a way to reference the entire recordset?
Immediate Window during Break Mode:
? me.fsubsrNavSHLBHL("NavSH_QQ")
NESE ' this is the correct value for the current recordsource
Set a breakpoint right after the line:
fsubsrNavSHLBHL.Form.RecordSource = "Select * from vsrNavigatorSHLBHL where Well_ID =" & txtNavWellID.Value
Immediate Window:
? me.fsubsrNavSHLBHL.Form.RecordSource
Select * from vsrNavigatorSHLBHL where Well_ID =91229
I have 2 questions/problems:
1. I want to populate a list box with all the Tables Names in my Database using VBA.
2. I also want to create another List Box or Grid (or any thing that will show table data) that when i have select a Table Name (See above (1)) it will show all the data in that table in the List Box. Was thinking some kind of SQL using vba to populate the list box?
Any ideas or help will be much appreciated
Richard
I have two tables (Table 1, Table 2). Table 1 is blank and has the fields "Field1, Field2, and Field3." Table 2 has data and 10 different fields ("Field1, Field2", etc). I want to copy all data from the matching fields in Table 2 to the corresponding Table 1. I've tried an Update Query in design view. Did not join any records, and just a simple:
Field: Field 1
Table: Table 1
Update To: [Table2]![Field5]
This returns 0 records to update. I thought about a Make Table to override the entire Table, but that isn't working either.
I have a table called BID with the following fields
bidder, seller, iid, starttime, bidtime, and bidprice
bidder is an id number that is reference to uid of table USER
the USER table have the following fields,
uid, uname, city, and state
I created a BID form for the user to enter data into the BID table. What I am trying to do but is having trouble with is have the user search for their name that may already be store in the uname field in the user table, and what ever they choose base on their search, the uid of this uname gets store into the bidder field of the bid table.
I still have a second step where the user in the bid form can search the iid but shows the itemname from the item table, and the value of seller, iid, and starttime from the auction table gets populated into the bid table.
iid from the auction table is reference to the itemtype and the following fields exist in the itemtype table.
iid, itemname, description
1. I have a table which lists all of the equipment we use in our company and would like to use it as a template in a form so that users can select a checkmark if the equipment is being used that day. The checked items would then be used to populate another table which records all of the equipment the user has selected. I thought the checkmark method would be best so that the user can scroll through the list of equipment and select multiple pieces for the day. The reason I don't use a multi-value field is so that the user can also enter quantity and hours of equipment used in the same table when they scroll through the list.
2. Once all of the equipment pieces have been checked, I would like the user to be able to click a review button which would navigate to the next form with all of the selections for the day. This new form will have the option to go back to the first form if any corrections need to be made. And also have the option to submit the results.
3. Once the user is finished with their selections, the user can then select Submit which will finalize the recorded equipment table and clear the checkboxes and any inputs from the equipment template table (without modifying anything) so that it can be used for the next day and so forth.
I am using access 2013...
In a Library database, there is a form about Books Lends o returns (table: MovBooks) When someone needs a books, I need verify if the book is lended or not. (Table: Books, field: Status -Yes/No-) and update if its free
I want to resolve this problem using Recordset.
Thank you very much
Hi,
I'm trying to create a new table from another existing two in vba. I'm using this code without success... Any help will be gratefully taken.
---------------------
Dim strSQL as string
Dim tablaSuma As DAO.TableDef
Dim rst As DAO.Recordset
strSQL = "SELECT * FROM Necesidades_TRS1, Pedidos WHERE Pedidos.Código=Necesidades_TRS1.Código"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
Set tablaSuma = CurrentDb.CreateTableDef("TablaSum")
For Each Campo In rst.Fields
tablaSuma.CreateField(Campo.Name, DB_SINGLE) = Campo
Next
----------------------
Mike
I have rather complex select statement (at least for me) that produces a summary of how a team scored in a league competition that week. I would not even worry about this issue, except that people float around as alternates and I deduced it would be easier to compute and store scores for a team the week they shot with a given group of people versus keeping track of who shot on what team over a 10 week period.
The selection takes 40 individual scoring records and consolidates them into 10 team summary records. I have verified that the query works, but implementing it has turned into a problem.
Problem one: my knowledge of recordsets is almost purely theoretical at this point, having never worked with them. Therefore commands and structures are a problem - mainly, I'm not sure what code is needed to post a recordset to a table
Problem two: the select statement that works as an Access query is bombing in VB
My code to date:
Dim RS As Recordset
Dim DB As Database
Dim strSQL As String
Dim inpWeekNum As Integer
inpWeekNum = 0
'InputBox "Enter Week Number" 'eventually request week number from user. an integer from 0-9
'strSQL = "SELECT tblRoster.* FROM tblRoster WHERE (NIGHT = 'Fri');" 'a test str. this worked.
strSQL = "SELECT tblRoster.TEAM, tblScores.WeekNo, " & _
"Sum([A1T1]+[A1T2]+[A1T3]+[A2T1]+[A2T2]+[A2T3]+[A3T1]+[A3T2]+[A3T3]) AS TeamTotal," & _
"Sum([A1T2X]+[A1T3X]+[A2T2X]+[A2T3X]+[A3T2X]+[A3T3X]) AS TeamXs" & _
"FROM tblRoster LEFT JOIN tblScores ON tblRoster.HEDR = tblScores.HEDR" & _
"GROUP BY tblRoster.TEAM, tblScores.WeekNo HAVING (((tblScores.WeekNo)=0))" 'hardwired week number
' "GROUP BY tblRoster.TEAM, tblScores.WeekNo HAVING (((tblScores.WeekNo)=inpWeekNum))" 'user prompted week number
Set DB = CurrentDb()
Set RS = DB.OpenRecordset(strSQL)
Do While Not RS.EOF
'Appending Code here... 'obviously missing code, but I know that it does cycle through as I would expect it to.
RS.MoveNext
Loop
'This was a previous test based on a canned qry I had saved (that resembles the above qry.
' this successfully posted, but only one record
'DoCmd.RunSQL "INSERT INTO [tblTeamScores](TeamNo, WeekNo, TeamTotal, TeamXs) " &_
' "VALUES (" & TEAM & ", " & WeekNo & ", " & TeamTotal & ", " & TeamXs & ")"
The select statement correctly produces this output in Access (for Week 0):
TEAM WeekNo TeamTotal TeamXs (how does one properly post a table in this interface?)
1 0 2397 182 0 3152 333 0 3292 664 0 2014 135 0 2836 186 0 3652 577 0 2024 198 0 1108 29 0 2630 2210 0 1977 11
Anyone out there have some suggestions? Am I even on the right track?
Thanks.
-Brian.
HI all
I have form containing some filtered records. What code do I need to put on a button to trigger a make-table query; the make-table thus containing only the current filtered records (not the entire database).
The following will use the entire database:
Dim stDocName As String
stDocName = "qryMakeTableCompanyID"
DoCmd.OpenQuery stDocName, acNormal, acEdit
Thanks
John
Hi all,
I have a form with around 10 checkboxes which serve as a filter option...now, when I hit my cmdFilter button it works well with a simple MsgBox !Ime showing all the filtered names...now, I want to put the results into a table tblTemp so that I could show the results in my subform. I've tried with making a sql string something like "INSERT INTO tblTemp..." but it's still empty.:confused:
Since this table will serve as a one time data, I will need to delete all records when I hit the Filter button next time...so, how do I send my recordset data into my table.
I hope this sounds understandable...
Thanks a lot,
Daniel
I'm experimenting in MS Access VBA reading from one MS Access application to another as visible in the code below. My problem is that I'm reading a recordset from an Access file and want to take that recordset (rec) to create a table in the current databank. If I run an cmd.commandtext "make table query" it runs the query across the connection and places the table in the remote database (as expected). Can I take the recordset and create a local table using ADODB command or is there a better approach. (I should note that the remote MS Access file does not have an .mdb suffix) Thanks in advance.
Sub get_indbyind()
Dim strInputfile As String
Dim dlgOpen As FileDialog
Dim bob As String
bob = Application.CurrentDb.Name
' select connection
Set dlgOpen = Application.FileDialog(msoFileDialogOpen)
With dlgOpen
.AllowMultiSelect = False
.Show
End With
strInputfile = dlgOpen.SelectedItems.Item(1)
' make connection
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
Dim strcnn As String
strcnn = "Provider=Microsoft.jet.OLEDB.4.0; Data Source=" & strInputfile
cnn.Open strcnn
' MsgBox "connection made"
' create recordset
Dim rec As ADODB.Recordset
Set rec = New ADODB.Recordset
rec.Open "SELECT * FROM SATransfers;", cnn
Dim n As Long
Dim i As Long
Do While Not rec.EOF
Debug.Print rec.Fields(0).Value; rec.Fields(1).Value; rec.Fields(2).Value; rec.Fields(3).Value
rec.MoveNext
Loop
' create table from connection cnn
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
Dim rs As New ADODB.Recordset
cmd.ActiveConnection = cnn
cmd.CommandText = "SELECT SATransfers * INTO tmp1 FROM SATransfers;"
Set rs = cmd.Execute
cnn.Close
Set cnn = Nothing
Set cmd = Nothing
End Sub
I have a table orders details with a sub form displaying the order, I have a combo box to display the product from products table to place in the sub form products box . I keep getting the error message join key of table details not in record set I have checked my relationships and for keys and there all there .
View 1 Replies View RelatedI have a main form with combo boxes to filter a subform. I want to be able to export the filtered subform data to a table within the database and only include the filtered dataset not all records.
View 14 Replies View RelatedI have one database containing several tables, two of which are associated to this inquiry:
1) tblCategories
Contains two columns: CatID and Category Name
2) tblPending
Contains many columns of data obtained through upload from a web form including a column to capture the CatID and also a column for Category Name.
I wish to populate the Category Name column based on the results of data uploaded into CatID column
How is this accomplished? This is inherited project and I have very little experience with Access so just limping along...
Specific instruction much appreciated.
Thank you.
Hi All,
A bit new to this, any help most appreciated.
I'm trying to set up a table which will have multiple fields (a recordset? is that right, if so I don't know how to set one up in access). Its for a skill set which is utilised by specific lines in a production plant.
Each line in the plant has a set of skills required. I have a skills table (SkillID and Skill), what I want to do is have a Skillset which I can then link to each line
So for example Skillset 1 with a SkillsetID will also have in that table skill 1, skill 2, skill 3, but all taken from the Skill table. However that would involve having the SkillID field numerous times in the same table, but this cannot be done?
The idea is that for each line I can link the Line table to the Skillset table and that tells you what skills are needed for that line.
I hope this makes sense.
Thanks all.
Basically, I want to be able to click on the New (blank) record button, and then start adding in my Attraction, Date, etc fields in the main form, however I keep coming up with the error:
Cannot add record(s); join key of table 'OrdersList' is not in recordset.
I've gone back and checked all my relationships, and the query the form is based on, and all appears to be working there fine. I can manually enter information on to the tables & queries just fine, (but obviously I don't want other users to be able to see these).
I'm wondering if it's something to do with the Auto Number, which is also my PK in table 'OrdersList'. As the first design of this database had this field set to a Text field and I would manually enter the next sequence and I didn't have any issues adding new Orders to the form.
The form is 'Orders', which is based on a query called 'Orders List'.
I have inherited an old database with a new field to add some new invoice numbers and increment the number to each recordset by + 1. Starting at 001. I have formatted the field to a Number Field and formatted it to 000"/2015". I now need to populate over 2000 records with the sequential numbers for each record.
I have created the following code as my attempt. Of course it doesn't work!
Code:
Sub AddNumbertoRecords()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim counter As Long
counter = 1
Set db = CurrentDb()
[Code] ....
I have a normal Access table. The first column is ID and is the primary key. The second column is a text. The table consists of two records and is sorted in ascending order. First comes the data set with the ID 1.
Sub test()
Set rs_access = CurrentDb.OpenRecordset("tab1")
rs_access.MoveFirst
MsgBox (rs_access.Fields("id").Value)
End Sub
The message box shows 1. So everything is fine. Now I sort the table descending. But I get the same message. Why? Appearently the recordset doesn't know that the table was modified. The recordset should register that the table is modified.
I`m currently having the problem to export data from an SQL server into a table. I managed to open a recordset but I`m incapable of adding the recordset to an existing table. I found similar threads but I am still not able to generate functioning code.
Code:
Function fDAOServerRecordset()
Dim db As DAO.Database
Dim dblcl As DAO.Database
Dim rssql As DAO.Recordset
[code]....
I have a form that gets its info from a query, I would like to be able to add a new item, Customer, etc, etc. But, when I try to add one (I have a button using VBA code, ill post that at the end) it gives me the error
Code:
Cannot add record(s); join key or table tblitems not in recordset.
Code:
Private Sub cmdEventNewI_Click()
Me.Visible = False
DoCmd.OpenForm "frmItemsEdit1", acNormal, , , acFormAdd, acDialog
Me.Visible = True
Me.lstItems.Requery
End Sub ' cmdEventNewI_Click