Solved

Import data in access from Excel using vba

Posted on 2014-04-03
11
695 Views
Last Modified: 2014-04-09
Hi I need to import or link to an excel file worksheet. One file can have many worksheet, i need to be able to link or import particular worksheet in access 2013.

I use the following code:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "tbl_Data", c:\file.xlsx, True, "My Dates!"

thanks for help
0
Comment
Question by:maximyshka
  • 7
  • 4
11 Comments
 
LVL 34

Expert Comment

by:PatHartman
Comment Utility
That is VBA.  What is wrong with it?  Are you asking to do the import with OLE automation?  Why would you do that if the TransferSpreadsheet works for your situation?  There is no advantage to using OLE automation and in fact there are disadvantages.  The only reason you would use automation is if the TransferSpreadsheet didn't work because you wanted to import individual cells at specific locations rather than importing a whole sheet or named range.
0
 

Author Comment

by:maximyshka
Comment Utility
I have a different problem now, unrelated to my previous questions.
I have excel files with many worksheets in them. For example one file might have worksheet1, worksheet2, worksheet3... I need to import in access only worksheet3. The code I provided does not work . It only works if i do not specify worksheet. In that case it takes only worksheet1
0
 
LVL 34

Expert Comment

by:PatHartman
Comment Utility
Are you sure your Worksheet name is correct?  I thought they couldn't contain spaces or special characters?
0
 

Author Comment

by:maximyshka
Comment Utility
Yes it is correct. The do contain spaces.
0
 
LVL 34

Expert Comment

by:PatHartman
Comment Utility
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "tbl_Data", "c:\file.xlsx", True, "My Dates!"

The file name was missing quotes.
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 

Author Comment

by:maximyshka
Comment Utility
I use string in real code, it does not work
0
 

Author Comment

by:maximyshka
Comment Utility
the problem is that I have sheet names with spaces . The code is working when sheet name does not have spaces. Is there any way to rename the sheets in excel file using access vba?
0
 

Author Comment

by:maximyshka
Comment Utility
strange when i create worksheet named "sheet 2!" it is working, but it doesn't work with worksheet named "Add Bills-Electricity!" . I've attached template i am getting. In case any one can help.

I need to make a link table or import data doesn't metter. when i use it with current sheet names i get
error 3129, invalid SQL statement. Expected DELETE, INSERT, PROCEDURE, SELECT, UPDATE.

thanks,
Max
test-file.xlsx
0
 

Accepted Solution

by:
maximyshka earned 0 total points
Comment Utility
I got the answer " 'Add Bills-Electricity!' " - it works .
0
 
LVL 34

Expert Comment

by:PatHartman
Comment Utility
Just another of the little problems caused by using object names with embedded spaces or special characters.  I knew when I saw your statement that the problem was with the sheet name.  Glad you found the solution and thanks for posting back.
0
 

Author Closing Comment

by:maximyshka
Comment Utility
I found the answer which works
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

This article will guide you to convert a grid from a picture into Excel format using Microsoft OneNote and no other 3rd party application.
Describes a method of obtaining an object variable to an already running instance of Microsoft Access so that it can be controlled via automation.
This Micro Tutorial will demonstrate how to use longer labels with horizontal bar charts instead of the vertical column chart.
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…

772 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

10 Experts available now in Live!

Get 1:1 Help Now