transferring data from an excel spreadsheet to an access table regularly - excel

I have created a continually updating excel table, with stocks information.
The information changes each time i press refresh in excel.
I plan to use this information in access, however i don't know how to ensure the data in an access table is always the same as in excel.
How do i update the access table to hold the same data as the excel table currently has?
i am a very inexperienced programmer, so apologies.
do i have to save the excel document as an array ?
I have tried copying and pasting a new table each time i need it updated, but this is obviously hugely inefficient.
High regards!

The short answer is that yes it can be done, and automatically. The following very good link from Microsoft shows you have to do this.
Move data from Excel to access
There's no "short answer" but as stated in the article "Connection information is stored in the workbook and can also be stored in a connection file, such as an Office Data Connection (ODC) file (.odc file name extension) or a Data Source Name file (.dsn extension)."
So what you want to do is setup that connection based on the information provided in that link and subsequent links. Good luck!

Related

Refresh an Excel Report that comes from PBI

I have a page on PowerBI that I did not develop, but I can download data straight to excel. This data needs to be filtered on PBI first before anything, as it contains sensitive information that I will be eventually sending to an external partner. What I want to be able to do is download this report to excel one time and create pivot tables, with all of the necessary filters added, and be able to just click refresh on the excel file and have it update (PBI file currently updates daily). My end goal is to send this information to a vendor and all I will need to do is hit refresh so that I may send to them. I am lost on how to do this, so if anybody can help I will greatly appreciate it!
Analyze in Excel is exactly the way to go. Find more information here: https://learn.microsoft.com/en-us/power-bi/collaborate-share/service-analyze-in-excel
You'll get a live connection to your Power BI dataset and you can use pivot tables to filter the data to your needs. And for sure the data is updated when you hit the refresh button.
To play it save you could finally remove the data connection from the workbook so that the data is frozen and there is no access to sensitive information.
See also my answer here regarding common Analyze in Excel pitfalls:
Power BI Exporting data to a excel/csv

Link to pivot table from another excel file

Banging my head against the wall on this one and every option I try has a problem with what i am trying to achieve.
So I have a pivot table in excel that is connected to a database. What I want to be able to do is have a link in another excel sheet to that pivot table, so that it picks up any changes to it in terms of data. The reason I am doing this is because I am putting the excel file up on sharepoint, but if a user downloads it, it retains the connection to the SQL Database, and because they are not authenticated, it doesn't refresh. I need them to be able to do this because it will allow them to customise their pivot table as needed, and it will retain that when they next open it. But the original pivot table, connected to the datasource, won't be affected.
I have tried:
Copying Pivot Table: I have copied the pivot table and pasted it in a new excel file, and this retains the connection to the SQL Database so doesn't work.
Moving Worksheet: I have tried moving the whole worksheet to a new excel file and this does again retains the link to the SQL Database.
Creating connection to excel file: This connected to the excel file, but the pivot table is lost and it simply shows the data in standard excel format.
Slicers: I have looked at slicers but this won't work either, because it means if he makes a change it is reflected in the original pivot table.
Sharepoint: I have looked at excel services on sharepoint. Although I can get him to view the data on the online excel, again, if he downloads it it loses the connection.
I guess I could change the authentication settings on SQLServer so that rather than using windows authentication I create a password and then that password is retained as I copy the file. Because this would only allow access to the view in the SQL Database this would prevent any detrimental activity. However, what I would really like to do is just give a copy of the excel file that connects to the original pivot table (so that when this updates this data is reflected in the copy on refresh), but any changes in the copy (i.e. formatting etc) only affect the copy.
If anyone knows how to do this I would be most appreciative of your help.
I may said something incorrect here, so pardon my lack of knowledge, but with the option:
Creating connection to excel file: This connected to the excel file, but the pivot table is lost and it simply shows the data in
standard excel format.
If I understand correctly, Creating connection to excel file provides a copy of the database in an excel file with all the source data from the original pivottable, and if by "connected to the excel file" you mean that any changes to the original pivottable is updated in this connected file in the copy of the database.
Then adding a replica of the pivottable in this connected excel file pointing to the copy of the data would not solve the problem?
Am I missing something?

Exporting Access data to pre-existing and pre-formatted Excel spreadsheets

Good day all,
I am very new to Access and VBA, so some of these questions may seem elementary, but any help offered would be greatly appreciated... I am a member of a recruiting organization, and am trying to build a database system that will greatly increase our administrative efficiency and quality of life. My organization insists on the use of Excel spreadsheets that are supplied to us to document our efforts and for our reports, thus ruling out the possibility of using the reports from Access. I have the underlying database pretty well ironed out, but what I need help with is taking that data and putting it in specific cells within an existing excel spreadsheet. Specifically, what steps do I need to tell access to do, how to select the appropriate worksheet, and how to select individual cells to send data to. I also need to link all of this to a button on a form labeled, say, "Generate Applicant Log"... Additionally, I would like both the database and all applicable template spreadsheets we would need to be located in the same folder that I can lock, so that I can send the whole folder to another user and all necessary files are included, but they can't get into the folder to mess with stuff. I am concerned this will affect whatever coding I would use due to the changing file path names from user to user, so any help in figuring out a way to tell access how to find the spreadsheets relative to where the database is so it always works no matter who's computer the folder is on or where it is at in the same computer, would also be greatly appreciated... I apologize in advance for the length of this inquiry, and graciously appreciate any help in this matter! Thank you for your time!
Rather than send data from Access to Excel, it is easier to pull data into Excel from Access. In Excel, on the "Data" tab select "from other sources" and build a Microsoft Query. I like to put the data into a spreadsheet and link the data into the sheet the user will see - I hide the original sheet. This way you can put all of the data into the hidden sheet, and then move things for the reports you need.
Using this method, I bring measurement data from a database, show it to users that need to review it, and run VBA routines to evaluate the data and highlight the interesting / important data. I also keep the users out of the original database.
I have my database on a server and I cannot offer help on sending the database and files to the user. I just send the file - they have access to the server and the data is refreshed each time the spreadsheet opens.

Can Access replace data information in an upload?

I have a project in Access where we are using tables that have the customers information. These tables were created by downloading as Excel from another site of ours and then uploading to the Access program.
The problem is that the information on our other site changes sometimes, and we really don't know what has changed on our existing information. When we append a new Excel download it will add customeraccountID's that are not on the table yet, but I need a way of finding out if there are any changes to the existing information.
I have tried an update query, but that makes forms that have a relationship to the customer information tables not show the detail section. From what I have researched, this is possibly due to the update query making the updated table read only.
I have taken an made a query that gives me a list of all the duplicates between the newly downloaded Excel and the existing table, but now I need some way to find if there is any changes. There are 60 columns where there could be changes.
We are not against manually updated our tables if we can find a way of finding out what has changed.
I have considered downloading the duplicates report to excel and running a formula using exact(a2:a61,b2:b61), but then I would have to copy that formula to every other row through thousands of rows. I have no preference to whether we find the changes by Excel or Access.
The best way would be to have Access replace the information when appending the new information, not just drop the duplicates. Which would mean having Access replace the existing data when appending. Is that possible or can a report be created that shows where the information differs?

How to link ms excel 2003 to ms access 2003

I have office 2003, and i have develop a database from ms access 2003.
What i want is to link ms excel and ms access so as when am updating either of them both will be updated
I know that from within Access, you can add a "linked table" with an Excel worksheet as a data source. This will cause the data in the Excel sheet to show up as a table in Access. When you make changes to the data in Access, the data in the underlying Excel sheet will change. Also, if you open up the Excel sheet and change the values in one of the rows, the change will be reflected when the link in Access is refreshed.
However, there can be issues when trying to link Access and Excel together. You may not be able to edit the same document from Access and Excel at the same time. Also, if you add additional columns or rows to your source data in Excel, you may have to completely re-link the table in Access.
If you are the only user of both the Access application and Excel sheet, you can develop a fairly robust solution using this method. However, you have to be careful with trying to deploy a solution like this with multiple users because you may start to get issues with multiple people trying to edit the same document at one time. At this point, you may need to look at more robust solutions involving a database or SharePoint backend.
As Ben said in his answer it is possible but can easily lead to problems in a multi user environment. I would suggest keeping the data in access and pulling it from excel. Or revisiting if excel is needed at all to update the date (read only reports would be ok)

Resources