This applies to complex data types - multi-value fields and attachments - in an ACCDB, not MDB. This is part 2 in a multi-part series on Stored Procedures with Access, Part 1 can be found here and Part 3 here. Please help. In the next paragraph, you will find two VBA code snippets that can be used from Excel to retrieve data from an Access database. Nested recordsets. Using VBA, I query our company's AD using ADODB to get an ADODB. S02E01 - Excel and Access VBA. The meaning of the first four, acFirst, acNext, acPrevious and acLast is self-evident. a couple of comments on your code. DAO and ADO Recordset Builder. For Access 2007/2010 the Provider is Provider=Microsoft. 0;" strConn = strConn & "Data Source = "& CurrentProject. Looping through an MS Access DAO Recordset The following demonstrates how to open a query as the recordsource and loop through it and print the data to the immediate window. This is a community of tens of thousands of software programmers and website developers including Wrox book authors and readers. AccessForums. Writing the VB6/VBA code to open a database and create a recordset on a table or query/view is very commonplace, yet complex and tedious. Multiple recordsets in Access 2003 vba By Donald_SUTTON · 10 years ago I have an unbound form which is to display a comparison of up to 4 sets of data according to user choice on a preceding form. Instrumental in this was the use of the DAO Recordset Object. When you execute the Open method of the recordset object, the recordset object is pointing to the frist row in the dataset returned. Set rs = db. Create a DAO Recordset from a table in the current database. Typically, these are new Recordset objects that you create with the CreateRecordset method or by explicitly assigning a new Recordset object to an object variable. How to Update Data with RecordSet in MS Access You can update the existing record using a recordset. VBA - Recordsets Part 1 (Programming In Microsoft Access 2013) 🎓 over Database Development in Access, creating the User Interface, and coding the backend of the application in Visual Basic. Posted: February 15, 2012 | Author: desmondoshiwambo | Filed under: Microsoft Access, SQL Server Connectivity | Tags: ADO, Connect to SQL using ADO, Microsoft Access, Recordset, VBA | Leave a comment. Recordset Dim St how to unlock a recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. net is a forum dedicated to Microsoft Access, if you want to ask any Access related questions or help other members out, please join our community , the registration is free and takes only one minute. Long way: If (condition which necessitates rst1) then. Using the Bookmark Property: 15. Create a recordset from a table or query in the current database. Using Collections in VBA. Recordsets have many methods and properties to make working with the records in the collection easy. It is an easy way to assign useful and easily rememberable names to data sources which may not be limited to databases alone. Creating a connectionless recordset in ADO is simple enough, but how do you do it in DAO? I want a recordset stored in memory so I can filter/sort it easily. In this Article, I will teach you, how you can do a connection with a Oracle Server. Using Excel Macros (VBA) you can connect to Databases like SQL, Oracle or Access DB. Connection Do While Not rs. In the Open event of the report:. I was hoping I can do the same with a saved query. Recordset, intI As Integer Dim fld As Field Set rst = Me. Microsoft Access Help Database Forums and Wiki by UtterAccess. Code shown below is written in excel macro file [. Once we get it, we can manipulate it in code and more importantly, for the sake of this demo, load it into an Access form. After identifying the column, assign the desired value to it; After editing the value, call the Update() method of the Recordset object. But ADO also allows you to open recordsets that contain information about your database's tables. You have defined AddToTable as a Function: Public Function AddToTable(adoRec As ADODB. Thank you for helping us maintain CNET's great community. Create an ADO Table Recordset. Creating an Excel spreadsheet in Access can save you time when you need to export data to an Excel spreadsheet. This document. We can open tables from MA Access, Excel and other MS Office applications. 09/21/2018; 2 minutes to read; In this article. Through using this object we were able to add, find, edit and delete records from an Access Database table or query. Writing the VB6/VBA code to open a database and create a recordset on a table or query/view is very commonplace, yet complex and tedious. The Recordset Builder helps you create ADO and DAO code to access your data. Of course, you can get at this information using ADOX, but some details are more readily accessed using ADO schema recordsets. NET provides you to add reference to the COM libraries. I read VBA Has No Class over at Excel Do, Dynamic Does with interest. For example, we want to record a User LoginID and login Time when the user successfully logged in on the Login Form or load the first form after opening database. In Access, you can find that count in the OpenRecordset object's RecordCount property. Recordset into a table?. com > Subject: Re: [Access VBA Central] Different results from DAO and ADO > recordsets > > > > My connection is set to CurrentProject. Welcome to the p2p. ActiveConnection = CurrentProject. Having said that, I would still prefer to use an ORDER BY clause in the SELECT statement. Append Data to Table, Access VBA; Microsoft MSDN: AddNew Method (ADO) Delete Record, Access VBA Recordset; Read Data from Table, Access VBA; Modify Existing Data in Table, Access VBA Recordsets; If you need assistance with your code, or you are looking for a VBA programmer to hire feel free to contact me. In this Article, I will teach you, how you can do a connection with a Oracle Server. Hi, I'd like to perform the following in the following order with Excel VBA: 1. Crosstab queries can get quirky when fields are not available on different data runs. Right now I have to iterate over the ADODB. I have created an Access 2016 database with a table that has a column set as a value list. Copy data from a worksheet Named Range to the Recordset 3. If you really need strong security on a database, you are better off using a more secure back end like SQL Server. I try to populate a list control with data in a recordset but it doesn't work. Print rs!MyField rs. Join Curt Frye for an in-depth discussion in this video Moving within a Recordset, part of Access: VBA (2011) Lynda. 4 part section >> A TreeView Project. If you did, you would be best served by using an action query because queries operate much faster on large numbers of rows than do row processing methods (recordsets). Most of the traps yield no syntax error; they are bugs lying dormant in your code until particular conditions are met. Recordset Dim MyConn, sSQL As String Dim Rw As Long, Col As Long, c As Long Dim MyField, Location As Range 'Set destination Set Location = [B2]. Join Curt Frye for an in-depth discussion in this video Displaying every row in a table (Recordset), part of Access: VBA (2011) Lynda. 2 Solution When you run a parameter query from the user interface, Access can find the parameters if they have already been satisfied using a form and run the query. Often it is required to get the records retrieved in an SQL fetch into a recordset to an array. Previously in the article Iterate and Search for Values in a Table, Access VBA I've explained how you can perform searches on a recordset object using a simple iteration. Create a recordset that will contain the query results. No in general, this does not pose much of an issue and there are any number of great tutorials that cover the various way to handle this. How to work with recordset (Dao) in MS Access. This allows me to create a checkbox-style input for the user, but I am having difficulty retrieving the values using SQL in VBA to create a recordset. The following code example uses the OpenRecordset method to create a table-type Recordset object for a table in the current database. What I need to do is create a 3rd , ado recordset, that joins 2 same name fields from both recordsets to return matching records. Create a DAO Recordset From a Query. Hi, I want to use vba to create an ado recordset of a named range in Excel to that I can run a SQL query on it, does anyone have any advice. There are, however, new objects in DAO that are used to manipulate and navigate multi-value lookup fields. Make sure to 'reset the form's recordset to current event - Form_Open(). Nested recordsets. This creates a dynaset-type Recordset that refers to the same underlying query or data as the form. Thus, anyone here can help me to do something like one time "insert into" table. Create some VBA code like the example below. Multi-User Application - Record Locking: Record locking occurs in two environments, the Microsoft Access Interface and the ADO Recordset Object. Set pc = ActiveWorkbook. Create the necessary SQL select statement or set the query name. The idea behind both codes is the same: Create and open a connection to the Access database. Access: VBA: Export a Recordset to Excel krankhaft Access 2007 August 11, 2010 November 7, 2012 1 Minute Here is a very simple, yet very useful, function that I wrote up at work. Very similarily to my MS Access - VBA - Export Records to Excel post, I found myself needing to easily export a form's recordset to Excel. I want to populate a table with the rows that the recordset returned. I have used ADO see code b Create a table from a recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. MS Access VBA – Looping through records. By passing a valid Command object into the first argument of a Recordset's Open method. Close Set rsTemp = Nothing End Sub Public Function. For instance, any errors that occur when manipulating data in a RecordSet or Field object are stored in a Status property. Open strSql, CurrentProject. Some basic steps are required in order to be able to access and manipulate data using ADO : Create a connection object to connect to the database. Connection Dim myRecordset As ADODB. A blank MS Access form is created with TextBox controls named for the columns returned by the temp table in the SQL Stored Procedure. Writing the VB6/VBA code to open a database and create a recordset on a table or query/view is very commonplace, yet complex and tedious. OpenRecordset(Name As string,[Type],[Option],[LockEdits] As Recordset) The explanation of syntax: Set: The keyword is used to set the variable to represent an open Recordset object. For Access 2003 Database the Provider is: Provider=Microsoft. Select the table to work on 2. Connection Dim objRs As ADODB. How to connect to Access Database – ADO Connection String. Access VBA Macros: Version: Access 2010 and later: Topic: Recordsets: Level: Average difficulty: Course: Access VBA macros: Exercise: Write a macro to add a new toy to a products table, then modify it to check that the toy added does not already exist. Dinh MVP (Access). When to use a form's recordset and when to use recordsetclone Recordsets are an essential tool of any Access programmer, there are many types and are used in a wide range of situations, today we're going to talk about form recordsets and provide some examples of their use. Navigating Recordsets with Multi-Value Lookup Fields. Recordset For Each fld in rst. Most of the traps yield no syntax error; they are bugs lying dormant in your code until particular conditions are met. In a nutshell, a Recordset is a way to access the data and structure of a table or query from Visual Basic programming. This article highlights ten common traps with DAO recordsets in VBA code. Nested recordsets in VBA Access 2007 introduced the possibility that a field in a recordset may itself be a recordset. When you create a recordset from VBA, however, the Jet engine isn’t able to locate the parameter references. This is a community of tens of thousands of software programmers and website developers including Wrox book authors and readers. Access 2007 introduced the possibility that a field in a recordset may itself be a recordset. Bob says: As you can see, the disconnected recordset can do everything a collection class can do, but without having to hand-roll any of the methods, recordset has them builtin. Range(strExcelRange). This is quite a useful function for copying a recordset from Access into Excel. Modules: Filter a recordset. VBA Access, Recordset. Not the underlying table or query, but the filtered, currently view recordset. Update: Finalize the adding;. When you execute the Open method of the recordset object, the recordset object is pointing to the frist row in the dataset returned. If you open a Microsoft Jet recordset on a local table, the default is a Table type. It can be bound to a local Access table that contains the data (as in the previous example with the SingleForm) so that the user cannot make any changes to the original SQL datasource. I'm experimenting in MS Access VBA reading from one MS Access application to another as visible in the code below. In the next paragraph, you will find two VBA code snippets that can be used from Excel to retrieve data from an Access database. I am trying this in Excel 2010. Does your Recordset return -1 for its RecordCount property? If yes, this article will be able to help you and explain the cause and fixes. References: Visual Basic for Applications, Microsoft Access 14. Right now I have to iterate over the ADODB. x Object Library '-- OLE Automation '-- Microsoft ActiveX Data Objects 2. Thank you for helping us maintain CNET's great community. For example, there is a record when the user logged in database. How to Update Data with RecordSet in MS Access. Connection Do While Not rs. Dim rs As DAO. Creating ADO Recordsets ADO recordsets are basically the same as DAO recordsets, with a few notable differences, as explained below. --HTH Van T. 2 Solution When you run a parameter query from the user interface, Access can find the parameters if they have already been satisfied using a form and run the query. There are three ways to open a Recordset Object within ADO: By opening the Recordset off the Connection. OpenRecordset(Name As string,[Type],[Option],[LockEdits] As Recordset) The explanation of syntax: Set: The keyword is used to set the variable to represent an open Recordset object. Recordset Dim strSQL As String strSQL = "Select field1, field2 from myTable where field1 > 30" Set rs = CurrentDb. It includes an ADODB Connection Object and an ADODB Command Object as well as a ADODB Recordset Object to assign to the form. The Excel OM exposes a number of objects and methods that you can use to create pivot tables, some more sophisticated than others. This MSAccess tutorial explains how to filter report results using the OpenReport VBA command in Access 2003 (with screenshots and step-by-step instructions). For instance: You may want to create a RecordsetClone to find a record in a subform, and move the form to the record found. I have a recordset from a query in another database that I wish to be able to save as a table in my current database. Perhaps you're intending to pass the array to a Windows API, and because APIs do not accept recordsets as parameters, this is the only way you can do it. Recordset - It is a container that holds the set of records returned from a database through a query or stored procedures. In the following code example, Current Product List is an existing select query stored in the current database. This article highlights ten common traps with DAO recordsets in VBA code. In a nutshell, a Recordset is a way to access the data and structure of a table or query from Visual Basic programming. Recordset but that is slow for a lot of records. x for DDL and Security ' 'I've included the code for "frmTABLE_MySQL" as shown at bottom. I must be missing something or have something wrong for vba ? Below is the code. Any code that examines the Fields of a recordset or applies criteria is affected. I'm afraid that if I use the ADODB connection for the Create Table query that the table will be created on the server where the Oracle database I'm pulling the recordset from resides. I received an email from a customer the other day asking how to set up an Excel pivot table programmatically. However, the recordset type must not be a snapshot or record is locked. When you're done working with a recordset in your VBA code, you should close it…to release the system resources used to keep it in working memory. Hi, I am having an issue creating a dynamic query in VBA. Download Sample MS Access VBA Project. Why is it? You can import Access table data to Excel without even opening the Access DB. (Alternatively, you could use ADO recordsets, but most Access old-timers I know are still using DAO for tasks like these. But ADO also allows you to open recordsets that contain information about your database's tables. 2 part section >> Excel VBA and User Forms. The idea behind both codes is the same: Create and open a connection to the Access database. Populate Combo box using recordset in vba Hello All, I am using the foll. Microsoft Access is a development environment used to create computer-based databases. I have an 2013 Access DB. Dim db As Database. Print rs!MyField rs. This creates a dynaset-type Recordset that refers to the same underlying query or data as the form. If I output the strSQL and paste it in an access query and run it, its fine and brings up all the records it should. BOTH recordsets return data correctly. Microsoft Access Help Database Forums and Wiki by UtterAccess. In this article I will explain how you can delete a record from an Access table using the Recordset object in VBA. Uses the GetRows method to copy a Microsoft Access recordset into a two-dimensional array. 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. Recordset) but a Function is a procedure that returns some knind of value ( a Sub is a procedure that does some work, but does not return an actual value) and AddToTable does not return a value. binding recordset to report with VBA code Hy,i have some ADO recordset and i want to bind it to blank report that I made in reports. Join Curt Frye for an in-depth discussion in this video Moving within a Recordset, part of Access: VBA (2011) Lynda. Net and C# will help you convert between all three languages. Using Arrays with Recordsets. Create a New Recordset in VBA. This applies to complex data types - multi-value fields and attachments - in an ACCDB, not MDB. Then you could do what you want in one simple SQL statement: INSERT INTO myLocalAccessTable (Field1, Field2, Field3,) (SELECT sqlField1, sqlField2, sqlField3 FROM mySQLServerTable) Regards, Dan. mdb) - I have no problem in creating this. new version of Access doesn't need DAO reference Dim rs As Recordset #2 Type of Recordset. Creating a VBA tool in MS Access is always better as compare to MS Excel. I have been accustomed to do recordssets in the following format: Dim rs As DAO. Create a DAO Recordset from a table in the current database. OpenRecordset(“DataSource”) Note: Data Sources with a Recordset. VBA Traps: Working with Recordsets. Re: Faster Access To Recordset Data In Vba Routine A very basic test I performed showed it was 12 times faster to recall the same information from an array of the same size. MoveNext Loop ' Restore original data because this is only a ' demonstration. Sub CreateRecordset2() Dim rst As ADODB. , I want do most (if not all) of the count-collecting in VBA using recordsets but I can not locate any examples or how to videos on how to do that. Recordset For Each fld in rst. There are three ways to open a Recordset Object within ADO: By opening the Recordset off the Connection. For example, if you download multiple sets of practice management system data, you may need to combine data from several spreadsheets to make sense of your data. In this article I will explain how you can perform searches on Recordsets using queries. How to work with recordset (Dao) in MS Access. OpenRecordset(Name As string,[Type],[Option],[LockEdits] As Recordset) The explanation of syntax: Set: The keyword is used to set the variable to represent an open Recordset object. Access VBA: Creating Text File or Table from Query Access is both a handy tool and a pain in the neck to use. For example, in the sub sFilterRS, I'm limiting rs2 to a single record by setting a filter on rs1. Recordset Dim strConn As String Dim strSQL As String Dim strRst As String strSQL = "Select * From Orders where CustomerID = 'VINET'" strConn = "Provider=Microsoft. com This property is available only by using Visual Basic for Applications (VBA) code. While interpreted ASP code is looping through the Recordset, making decisions about what to display and response writing some HTML, the server is using limited resources holding open a connection to the database. The meaning of the first four, acFirst, acNext, acPrevious and acLast is self-evident. Recordset Dim cn As New ADODB. Ms access - Creating Recordset in VBA wit SQL statement Stackoverflow. Re: Creating a recordset via VBA SQL and selecting the vales of a value list column I changed the line to: objGiftCard = rstIncen. The Recordset type must be a direct table, opened using the adCmdTableDirect option. Recordset Dim strConString As String Dim strSQL As String. In the Open event of the report:. INSERT trough recordsets are slower than direct SQL statements, but the recordset may act like a "write buffer" and leave the impression that it is faster. so i may create the desired recordset for the report?. Answer: To access a value directly from a table using VBA code, you first need to create a new Module. In my VBA projects, I occasionally need to know the number of records in the recordset that I have obtained from either the local Access database or remote database server such as MySQL, Oracle, or SAS data mart on the network. This MSAccess tutorial explains how to filter report results using the OpenReport VBA command in Access 2003 (with screenshots and step-by-step instructions). Recordset Dim St how to unlock a recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. ConnectionError, ComboBox, Cascade, ADODB, and GetString. com is now LinkedIn Learning! To access Lynda. The following code example uses the OpenRecordset method to create a table-type Recordset object for a table in the current database. Having a problem with my recordset. Range(strExcelRange). Access 2007 on XP I have a VBA procedure that picks a single record of a table using aa DAO recordset. com I am trying to create a recordset in Access VBA that will show me all records in a table related to the current record of a form. Join Curt Frye for an in-depth discussion in this video Moving within a Recordset, part of Access: VBA (2011) Lynda. In this free advanced video tutorial series Steve will be going over Microsoft SQL Server installation, Database Migration, creating a better User Interface, using external data sources, complex Visual Basic For Applications (VBA) concepts and distributing your application. Sub Create_recordset(). A Statement is an interface that represents a SQL statement. We want to record a logout Time when the user logged out from database. Although there is a Recordsets collection (the collection of all open Recordset objects in a database), it is not much use, except to list the open recordsets and their SQL statements, as in the following code sample:. Access VBA Macros | Recordsets exercise | Adding toy, checking if already exists This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl. Writing the VB6/VBA code to open a database and create a recordset on a table or query/view is very commonplace, yet complex and tedious. My code uses DAO recordsets, which will require that you set a reference to the Microsoft DAO 3. (You can also generate a multiple Recordset by populating a Recordset with. Recordsets. This is the snippet ADO Connection, Command, Recordset, and Parameter Object Example on FreeVBCode. Creating a Continuous Form Unbound from the Original Recordset. Select the fields you want to access 3. can create 2 adodb recordsets (mcr_Server1_tbl1) (mcr_Server2_tbl1) These use 2 Different Connections to 2 DIFFERENT SQL Databases. mdb database with the following code [code ] [indent] set access form recordset to ADO recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. The Recordset Builder helps you create ADO and DAO code to access your data. 4 part section >> A TreeView Project. Basic usage. In this free advanced video tutorial series Steve will be going over Microsoft SQL Server installation, Database Migration, creating a better User Interface, using external data sources, complex Visual Basic For Applications (VBA) concepts and distributing your application. Filtering and Ordering Recordsets Whenever you work on records in a database, it is rare that you want to carry out an action on the entire table. Fields ' Print field names. MoveNext Loop rs. The Recordset object is the primary object used to manipulate data in Access databases (and other databases as well, via ODBC connections). There are several other recordset methods, which you should read about. If you attach this statement to the form's On Current event the value will be updated when the form is opened, and when each new record is displayed. Using ADO recordset in managed code using ADO. Access and its wizards let you create basic data-bound forms,. csv file? I don't really want to create a temporary table and then export it that way. There are, however, new objects in DAO that are used to manipulate and navigate multi-value lookup fields. June 12, 2010 'open the recordset for use (table, Query, MS Access VBA – SendObject to Multiple Recipients. I have used ADO see code b Create a table from a recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. 2 Solution When you run a parameter query from the user interface, Access can find the parameters if they have already been satisfied using a form and run the query. I'm looking for an example of creating a pivot table based on an ADO Access Recordset. // this recordset was create successfully Now I want create another Recordset from rs1, which will sum all the Quantity of all items from rs1 into new Recordset rs2. Here is the sample code on how to create a new recordset. You can update the existing record using a recordset. Create the actual query and test it thoroughly. The recordset object concerns itself with rows. I want to know if this is the right way to create a recordset base on the data from another recordset: I have a recordset (RsetMain), its source is from a table of an Access database (. What we're proposing to create is a virtual table, in memory, in the form of an ADO recordset. How to work with recordset (Dao) in MS Access. Recordset types in VBA There are different types of DAO recordset, with different methods. I am trying this in Excel 2010. Once we get it, we can manipulate it in code and more importantly, for the sake of this demo, load it into an Access form. Very similarily to my MS Access - VBA - Export Records to Excel post, I found myself needing to easily export a form's recordset to Excel. I'll start by creating a variable for my record set, so Dim myR As Recordset. Using the Bookmark Property: 15. We have already established that record locking is in effect mostly in network shares. If I create a table I can make it work, but I don't want to have to read/write everything from/to disk every time I need to use the data. Course Transcript One of the most basic questions you can ask about a table, or other recordset, is how many records there are within that object. > > HTH, > > Roy > > > > _____ > > From: AccessVBACentral@yahoogroups. If i create report in reports section and after that i want to see it in my code as that same object and set his record or data source property how to do this??. I'm trying to set an Access Forms recordset to an ADO recordset containing a list of tables in an Access. versions of Access that are earlier than Access 2000. Count the records in a recordset. Date sent: Tue, 05 Mar 2002 18:53:08 -0500 From: "Speer, Tim (T. You need a minimum screen resolution of about 700 pixels width to see our exercises. Declare 2 ADODB objects (1) MyConnection (2) MyRecordset. Working with Recordsets So far you've looked at navigating through recordsets, setting and using bookmarks, creating recordset clones, and finding specific records. S02E01 - Excel and Access VBA. mdb database with the following code [code ] [indent] set access form recordset to ADO recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. transfer the range table data to a ADODB. However, the recordset type must not be a snapshot or record is locked. mdb database with the following code [code ] [indent] set access form recordset to ADO recordset - Microsoft: Access Modules (VBA Coding) - Tek-Tips. Collection types are very useful because it is easy to add items to it and iterate over the items in the collection for whatever purpose you have in mind. Set recordset to form: 18. Access and its wizards let you create basic data-bound forms,. Execute() method. Since the ADODB recordset has a separate VBA library, you can use this method in all Office applications (Word, Access, Outlook, Excel, Powerpoint, etc. To do this, open the Database window, select the Modules tab and click on the New button. Depending on the cursor type chosen when opening the Recordset object this may or may not work. By using recordset locking, you can control when and for how long the data is locked. A Recordset object consist of records and columns (fields). The Slicers can be used to create a different criterion for each Field. Save Recordset To CSV File \MyFileName. Sometimes it is not possible to use Report Writer to create a table relationship to access the data that you want to add to a report. The Recordset Builder helps you create ADO and DAO code to access your data. Lesson 6: File and Folder Management Using VBA. When you design your report, that is the time you will decide on the defaults for your report. NET provides you to add reference to the COM libraries. A Collection is an type that contains a set of related objects - in memory. http://vbahowto. ConnectionError, ComboBox, Cascade, ADODB, and GetString. You can create a temporary table or query if you want to use a recordset as RECORDSOURCE of a form or report. Before moving to the last one, the recordset does not know how many records it yields (there are some more details to this problem, which I don't remember exactly right now, concerning recordset-type or so). The Recordset object is an essential component in Access development, but it often trips up even experienced developers. Is that true? Is there anyway to borrow some tools from Access to accomplish this join?. Link Data to Shapes in Visio (not the Standard edition though) is great for visualizing information, and I often use a multi-worksheet Excel workbook that I create locally, and then wish to re-link to a copy of the workbook elsewhere, or even in Office365. I have the vba code creating it using adodb. To open Recordset object, you have to use the following syntax: Set Rs= Db.