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.

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.

  • 2
    Is this a one-off copy, or does the data need to be updated when the sheets are updated? You say 30 spreadsheets with 20+ worksheets. Are you intending for a 600+ page document? Or are you just after a result from each worksheet? One quick suggestion without knowing more is that you can insert a worksheet into a Word doc, see spreadsheeto.com/excel-to-word – Ian Aug 27 '18 at 1:55
  • Ian, Thanks for taking a look. This is a one-time merge / migration of data. The new document will be the safe source and the original spreadsheets and Google doc will be deleted. And, yes, it is going to be a very big document. I'd prefer to turn this into a Wiki, but there is little appetite for adding new tools. My goal is to avoid 600+ copy / paste actions, but I may not have any other options. – sandeaj Aug 27 '18 at 15:26

Less of a solution, more of a proposal. Too long for a comment.

If you drag-and-drop the Excel file into Word it embeds a copy. The original can be renamed/removed, and the embedded version can still be opened and edited. You double-click, and it opens the data in Excel.

According to my searches for some people this file embeds as an icon into Word, like so:
Word embedded Excel icon

But for most people (and for me) it embeds as a table, like so:
Word embedded Excel table

The problem with this is that it only shows the first worksheet. If you double-click you can still see and edit the rest of the sheets, but they won't show in the Word Doc.

I personally like the icons idea, it makes for a compact master document that contains 20+ Excel workbooks, each with 30+ worksheets. You can show all icons on a single page, or split them into categories. But it may not be what you need.

If you want to do the icons, and drag-and-drop inserts them as tables, it may be possible to change that behaviour. For some people (this will probably depend on OS and version of Office, it doesn't work for me on Mac using Office 2016), you can right-click on the embedded table/icon and "Convert" it from one type to the other, as described here. You may be able to select multiple and convert (although I doubt it will allow that). Or at that point, it may be easy to record a macro.

Inserting the Excel workbooks as icons can be done, but requires more steps. However if you are only working with 20 workbooks instead of 600 worksheets, it becomes more manageable. Go to Insert > Object, ensure "Display as icon" is checked, then select From File and open the file. Repeat for each workbook.

Or if you really need the tables to be visible, for every worksheet, I think you are looking at writing VBA to do it. I wouldn't know exactly where to start, it would likely take me half a day to nut it out. I'll leave that one to you, or another helpful soul who is a VBA expert.


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.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.