Solved

Export from Access 2007 table to Excel 2007 triggers "External table is not in the expected format"

Posted on 2014-02-06
5
571 Views
Last Modified: 2014-02-18
Hi

I have an Access 2007 app that runs automatically on a server and generates a number of reports based on data in an Access database. One of these reports is actually a simple export of one table with currently just under 17,000 rows and about 65 columns to an Excel 2007 (SP3) xlsx spreadsheet wich is generated in the process (i.e. it does not exist before the export).

Since a while, I get errors from time to time on that process. I am using DoCmd.TransferSpreadsheet, and after the first errors I changed the Excel type to acSpreadsheetTypeExcel12Xml, because other types gave me an error. For a while that worked well, but now, 2 days in a row, I got the "External table is not in the expected format" error. I am a bit puzzled as to what I should do. My export statement is:

DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "myTable", sOutputFileName

Even stranger is that, when in both error cases I ran the app again with breakpoints and executed the same statement by stepping it in Debug mode, it worked fine !

As I have read over the internet that some people say that there is a size limit to what can be imported in Excel with the current method, I'm a bit nervous, because the source table grows in number of rows every day, albeit very slowly.

Can you tell me:
- what could be wrong ?
- what can I do ?

Thanks
Bernard
0
Comment
Question by:bthouin
  • 3
  • 2
5 Comments
 
LVL 84
ID: 39838968
Is anything happening before you run that TransferSpreadsheet call?

Anytime I see code that mysteriously breaks, but then runs fine when I'm in Break mode I think of timing issues. For example, if Excel is busy doing something else, then you might run into conflicts with that.
0
 
LVL 1

Author Comment

by:bthouin
ID: 39841202
No, nothing is happening with Excel before. This is the first Excel produced each morning. But I thought about something else: although the DoCdm fails, an empty Excel is created. So when I re-run the DoCmd, the Excel with the proper name is already there, it's then just filled with data. And I have read MANY posts in various forums from people having similar troubles that it very often works when the Excel file already exists !

So, should I create the spreadsheet first and then fill it ? Although it should not be needed, if it works, it's good enough for me.

What do you think ?
0
 
LVL 84
ID: 39841422
Yes, I'd go along with that.
0
 
LVL 1

Accepted Solution

by:
bthouin earned 0 total points
ID: 39856122
Actually, I did something meaner: I repeated the Docmd call a second time if the first one threw an error, which it always does. But because Excel is already runing and the file has been created when the second call is issued, that second call succeeds...:-)

So, problem solved (albeit inelegantly).

Bernard
0
 
LVL 1

Author Closing Comment

by:bthouin
ID: 39866883
My own solution, and not very handsome at that...
0

Featured Post

Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I see at least one EE question a week that pertains to using temporary tables in MS Access.  But surprisingly, I was unable to find a single article devoted solely to this topic. I don’t intend to describe all of the uses of temporary tables in t…
It’s been over a month into 2017, and there is already a sophisticated Gmail phishing email making it rounds. New techniques and tactics, have given hackers a way to authentically impersonate your contacts.How it Works The attack works by targeti…
This Micro Tutorial demonstrate the bugs in Microsoft Excel for Mac with Pivot Charts.
This Micro Tutorial will demonstrate how to use a scrolling table in Microsoft Excel using the INDEX function.

773 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