How to Connect MS Access with Excel: A Step-by-Step Guide

Connecting MS Access with Excel lets you combine Access's relational database power with Excel's analysis and charting tools. There are three main approaches depending on whether you need live data, a one-time export, or periodic refresh.

Method 1: Link an Excel File as a Table

  1. In Access, go to External Data → New Data Source → From File → Excel.
  2. Browse to your .xlsx file and select 'Link to the data source'.
  3. Choose the worksheet and check 'First Row Contains Column Headings'.
  4. Access creates a linked table (e.g., Excel_Sheet1) that reads live from the file.

Linked Excel tables are read-only by default. Access refreshes data each time you open the table or run a query against it.

Method 2: Export a Query to Excel

  1. Create or open a query with the data you need (e.g., qryMonthlySales).
  2. Click External Data → Export → Excel.
  3. Choose a destination path and click OK.
  4. Optionally check 'Save export steps' to reuse the export as a one-click macro.

Method 3: Use TransferSpreadsheet in VBA

Automate recurring exports with VBA. This example exports qryMonthlySales to a fixed Excel path:

  • DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, 'qryMonthlySales', 'C:\Reports\MonthlySales.xlsx', True
  • Schedule the macro with Task Scheduler for weekly automated reports.

Best Practices

  • Store Excel files on a stable network path if linking — broken links cause #FileNotFound errors.
  • Import (copy) instead of link when Excel data changes infrequently — linked files are slower.
  • Use Pass-Through queries or SQL Server linked tables for large datasets instead of Excel.
  • Compare Access vs Excel for data management if you are deciding which tool should be primary.

Have a question? Get a free quote