I have around 30 Excel spreadsheets, each with 20+ worksheets. Each of these worksheets follows the same basic format, though there are slight differences. I also have a Google doc with sections that match each of the worksheets.
Somehow I need to merge the data from the spreadsheets and the Google doc into a single, searchable, editable document, which will become the new safe source, eliminating the need to maintain 600+ worksheets.
So far, the plan is to have an intern copy/paste from Excel into the appropriate section in the Google doc, but besides being akin to torture, I'm afraid this approach will take days.
Can anyone think of a way to automate at least some of this?
I've been thinking that if I could somehow take all of the Excel data and migrate it into either Microsoft Word or a Google Doc, that would be a good first step.
I have used Google Apps Script in the past and could probably figure out how to write a macro in Excel, but I can't wrap my head around how I would actually accomplish what I need to do.
I'd appreciate any suggestions.
Wanted to provide an update in case anyone else ever has a similar problem...
I ended up moving all of the existing spreadsheets to Google Drive and using Google Apps Script to iterate through the folder to get the name and id of each file and then iterate through all worksheets of each of those spreadsheets, copy all data from each sheet and append it to a new master spreadsheet.
I then migrated the existing Google Doc to a Google Sheet so I could sort.
After that I manually copied the applicable sections from this Google Sheet into the correct, corresponding section of the master spreadsheet. I'm sure someone smarter than me would have been able to script that last part as well, but I was having trouble figuring out the logic and decided to brute force the last step.
Related
!We have recently spent a few days developing an Excel Master workbook for our team of 4 members to streamline our administrative tasks and to improve our record keeping practices. We now have the Excel workbook working fine on a single user basis. It has VBA macros for creating new files and folders which is already working well. However, we are 4 members on the team and it is essential that we can work on this sheet simultaneously. If we opt for the Sharepoint option, we cannot use the macros. If we use the shared Excel file option, we lose the functionality of the Master workbook as we cannot make use of tables or array formulas. Any ideas on how to work around this? We have done some research and found that one idea might be to create a database where each of the team members have access to the database via a shared drive like OneDrive. But- is this the best solution? I have never coded anything like this before and it will take me a long time to learn how to do it and before spending weeks and weeks on getting it to work, I would just like to get some advice on the recommended path forward.
Here's what the current sheet does:
Saves a list of contacts.
2.Saves a list of current tasks.
Saves a list of current deals we have in the company, customer and supplier info.
The Macro then creates a relevant file per deal on our drive and embeds a subset of new Excel worksheets we use for documentation purposes.
Any help would be appreciated!
I would like to prevent normal users (not determined hackers) from copying an Excel spreadsheet to Google Sheets and then then using the Google version. I know I can't prevent users from copying the file, but I wonder if there are things I can do to make some features of the copied spreadsheet unusable with Google Sheets. I need a solution for this because my subscription mechanism depends on preventing the user from editing certain cells, and if the user copies the file to Google Sheets, he will be able to edit those cells (since Google Sheets does not respect Excel's cell protection).
I know that Google Sheets does not import Excel macros. So one approach might be to create macros (which I don't really need) and then tie some features to those macros, thus preventing the Google version from working. Or maybe I could use some obscure Excel function that Google doesn't support. Can anyone comment on these approaches or suggest other possibilities?
in my organization we work with Google Apps but we have one file that we need to maintain in Excel due to its complexity. All my other spreadsheets are Google Sheets and a lot of them need to get data from that excel file. So my question is: is there a way either trough google scripts or excel publishing to get data from an excel file in Google Drive to a Google Sheet?
I know all about the other direction, Google to Excel, but Excel to Google is proven more complicated. Any help would be much appreciated.
im giving you an algorithmic-level answer without code because you also have none.
with apps script you can import the xls to drive as a new spreadsheet at regular intervals. then, copy its contents to a fixed spreadsheet (replacing previous content).
other spreadsheets can read from that fixed sprradaheet with scripts/importrange etc.
I have an Excel sheet which is used for bug-tracking. Each client has their own .xlsx and each application for that client has its own sheet within the .xlsx. So multiple Excel files with multiple sheets, all in the same format.
All sheets have the same headings and some columns have data validation and conditional formatting. Occasionally, however, the layout/headings or values allowed in data-validated cells, etc. must change and I have to go through each sheet and manually make the changes.
Is it possible to have a master sheet from which other sheets will inherit headings and heading styles with all cells under particular headings having data validation and conditional formatting?
(Before this is suggested, I used to simply put everything in one sheet and use filters to show a particular client/application, but this became impractical when sharing and versioning the sheets with multiple people)
The term you are looking for is a template. You create the template and give that to your 'clients' to track bugs. If you make an update to the template and give it to the client, they can just copy/paste data into the new form.
In my opinion, you're going about this the wrong way. Excel is a spreadsheet programme, while it CAN be used as a 'list' of sorts, it is a poor choice for bug tracking. If you're stuck on Office applications, use an Access database or something that can actually give you a 'front end display' separate from the 'back end data'. There are many free bug tracking software programmes on the internet. Set one of them up and just have your clients log a bug there.
Using a template and then getting the clients to copy+paste the old data is one way, but its not exactly the safest method.
If you did want to distribute a new template to your users it would be a good idea to add some import functionality. So VBA handles copying the old data across.
If you (personally) could do the changes to the template manually, then you might also be able to create a workbook+macros to "patch" the source (or a copy of the source) data in-place.
With either approach you'd probably need to add something to the source workbook to keep track of what version they have and make sure they they import from and to the correct version to prevent unhappiness in the future.
Could you show an example of a change? before and after etc
I have a macro that stops users from deleting rows and columns and i need to apply to between 100 and 200 excel workbooks. These sheets will be accessed daily by a large number of users in 2 different offices from a shared drive. Is there a fast way to apply the effects of this macro to all of these books at once?
Yes it's possible to add code or a module to a workbook programmatically. This article can help you get started. Let me know if you need more help. http://vbadud.blogspot.com/2008/10/programmatically-add-macro-to-excel.html. Also, you'll need to make sure your macro security settings trust access to VB project. This article explains how to do that: http://support.microsoft.com/kb/282830