Please Note: This article is written for users of the following Microsoft Excel versions: 2007, 2010, 2013, and 2016. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: Pulling Access Information into Excel.

Pulling Access Information into Excel

Written by Allen Wyatt (last updated November 22, 2024)
This tip applies to Excel 2007, 2010, 2013, and 2016


5

Moss built an Access database of his customers, and he uses Excel for the invoicing. He wonders if there is a way to populate the customer information fields in the Excel invoice automatically from the Access database.

There are a few ways you can approach this task, and each method has plusses and minuses. A relatively simple approach is (obviously) to forego Excel altogether and simply do everything in Access. Simple invoices could be created using forms, and then your data doesn't need to travel between programs.

If you prefer to do the invoice in Excel, then you could create a link in Excel to a query in Access. You create a new query by following these general steps:

  1. Select cell A1 in a new worksheet. (Don't select a cell on your invoice.)
  2. Display the Data tab of the ribbon.
  3. Click the From Access tool, in the Get External Data group. Excel displays the Select Data Source dialog box. (This looks very much like a standard Open dialog box.)
  4. Use the controls in the dialog box to find and select the Access database that has your customer information.
  5. Click Open. Excel displays the Select Table dialog box, provided there is more than one table in the Access database you opened.
  6. Select the name of the table or query that contains your data.
  7. Click OK. Excel displays the Import Data dialog box.
  8. Use the controls in the dialog box to specify how and where the data should be imported.
  9. Click OK. Excel grabs the data you specified and places it in the worksheet.

With the Access data now in your worksheet, you can access the imported information, from your invoice, using formulas that utilize various lookup functions. The imported information is refreshed each time you open the workbook.

Another approach is to develop your own set of VBA macros to grab the information from the Access database. This is not a trivial task, as it involves knowing how to access, via VBA, objects in both Excel and Access. You'll also need to know how to put together SQL statements to extract only the data you want from the database. The upside of slogging through creating the macros is that they provide the most flexibility possible in grabbing data and manipulating it.

Creating the exact macros you need is beyond the scope of this simple tip. You can find more information by getting a few good VBA programming books (make sure you get one specifically for Access as one of the books). The websites available at the Access MVP site may also be helpful:

http://www.mvps.org/links.html#Access

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (11843) applies to Microsoft Excel 2007, 2010, 2013, and 2016. You can find a version of this tip for the older menu interface of Excel here: Pulling Access Information into Excel.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Counting Words

Do you need to know how many words are in a range of cells? Excel provides no intrinsic way to count the words, but you ...

Discover More

Inserting Multiple Drawing Objects

When you need to add more than one of a particular drawing object to a worksheet, you can use the techniques described in ...

Discover More

Minimizing the Ribbon for a Document

Want the ribbon to be minimized for a particular document? Word may not allow you to get the exact result you want, as ...

Discover More

Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!

More ExcelTips (ribbon)

Don't Update Links to Other Programs

If you have links in your workbook to data in other workbooks, you may want to control whether Excel updates those links ...

Discover More

Finding Wayward Links

Combining workbooks that have cross-links to each other can offer some special challenges. This tip examines how you can ...

Discover More

Updating Links in Copied Files

When you copy workbooks that contain links, you may be at a loss as to how to update those links. There are a couple of ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] (all 7 characters, in the sequence shown) in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is 4 + 9?

2016-07-26 11:31:39

Judy

Jeff - what is Power Query?

Thanks


2016-07-25 10:03:25

Dave S

If doing this infrequently, may be easier to import from Excel into Access using Access' External data functionality. Or, you can cut and paste data from Excel into an open Access table (making sure data types of source column and destination field correspond). Otherwise, the Excel vba route is an option, by which a link is made to a database using either DAO or ADO - an internet search will locate example code.


2016-07-25 09:34:12

Jeff Starr

You should be discussing Power Query as one of the options, if not the preferred one! It's powerful, fantastic and provides an ongoing link to the data!


2016-07-25 09:33:44

Henry Arthur

Michael
It is the same operation in reverse. In Access go to the 'External Data' tab and choose the 'Excel' option in the 'Import and Link' group. Follow the instructions from there.

Make sure your Excel worksheet data has row 1 as the headings you want for field names, or use named ranges which Access can find easily.
Henry


2016-07-25 02:26:03

Michael Williams

How can I export excel data to Access ?


This Site

Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.