Solved

When to import data from Excel into Access, rather than link Access to Excel spreadsheet?

Posted on 2012-12-21
7
476 Views
Last Modified: 2012-12-21
Hello - I am taking over an Access 2010 app that links to an Excel 2010 spreadsheet that is currently at 52,000 rows.

I have a gut feeling that it would better to just import this data into the back end accdb (it's the typical split db implementation), but I'd like to have something to hang my hat on if/when questioned.

Has anybody seen any white paper-type articles about when it makes sense to import, rather than link?

Thanks
0
Comment
Question by:mlagrange
  • 2
  • 2
  • 2
  • +1
7 Comments
 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
ID: 38713097
There are a number of reasons to link vs import.

What is the purpose of the Excel file?  How often does it change or have records added

Does your Access application need real time updates or near real time via your Access application.
0
 
LVL 57
ID: 38713233
Ditto what Dale said; there are pro's and con's to each and which you use depends on your needs.

If it comes down to either would suffice, then go with the simplest and simply link.

And of course the 3rd way is to work with Automation and read/write the spreadsheet directly with Excel.

Jim.
0
 

Author Comment

by:mlagrange
ID: 38713267
Great points - the spreadsheet is a SAP database query of expenditure transactions for fixed asset construction and maintenance projects. It is only run once a month, after the monthly close process. As such, there are no updates to it; it is display-only on the Access forms & reports.

I am re-working how the data is used in the application; the original developer had it rigged up so that the relevant fields of the query output was copied to another xls, linked to the Access front end, and a series of update queries were run to summarize and update the spend amount fields in the project records for prior & current year totals, monthly totals, etc.  I'm replacing all that with a single SELECT query that does all that roll-up hoo-hah, and just JOIN it to the project table when needed.  

I'm thinking, for 50K+ rows, indexes would be helpful.
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 47

Accepted Solution

by:
Dale Fye (Access MVP) earned 250 total points
ID: 38713292
Given your description, I would probably create a table in the BE of the database and append new records/update old records in that table from a linked XLS file.

Hopefully, you can structure that BE table in a normalized fashion to make it easier to query and perform analytics.

How many new rows do you have per month.  If this table is going to grow quickly, I'd suggest building the table in SQL Server (Express is free) and using that as the backend.  This will provide increased storage and faster processing via stored procedures and views.
0
 
LVL 57

Assisted Solution

by:Jim Dettman (Microsoft MVP/ EE MVE)
Jim Dettman (Microsoft MVP/ EE MVE) earned 250 total points
ID: 38713301
<<I'm thinking, for 50K+ rows, indexes would be helpful. >>

 It is getting into that range in terms of rows, but it depends on how the data is consumed.  And the ISAM drivers Access/JET uses are not all that bad performance wise, so you would be suprised how much you can get away with.

Jim.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 38713515
Here is my take.

If there is some special functionality with the spreadsheet (Links to another sheet, Custom Functions, special data entry processes, ...etc)
Then it may be best to keep the data in Excel.
(Many member here also site that it is easier to Graph/Chart/Pivot in Excel)

There is always something to be said for keeping everything under one roof.
So if this is just a "list" (Customers, Orders, ...etc), ...then consider moving this to Access.

As you know, the ability to update Excel from Access has been removed for a while now.
Also note that you typically cannot link an .xlsx (XL 2007/2010)  file into a .mdb  format database.

"My users like Excel"
...A valid point...
IMHO, Access offers may advantages over Excel.
You can create an interface that feels and looks similar to the Excel "experience"

Finally consider what might happen if you had to upgrade the Back end to SQL Server...
I have seen all sorts of posts stating that you can "Link" Excel into SQL, but I have never tried any.

JeffCoachman
0
 

Author Comment

by:mlagrange
ID: 38714596
Thanks, guys
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

This article is a continuation or rather an extension from Cascading Combos (http://www.experts-exchange.com/A_5949.html) and builds on examples developed in detail there. It should be understandable alone, but I recommend reading the previous artic…
Regardless of which version on MS Access you are using, one of the harder data-entry forms to create is one where most data from previous entries needs to be appended to new records, especially when there are numerous fields and records involved.  W…
Familiarize people with the process of utilizing SQL Server functions from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Ac…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now