Coding level: Beginner
Duration: 15 minutes
Project type: Automation with a custom menu
Objectives
- Understand what the solution does.
- Understand what the Apps Script services do within the solution.
- Set up the script.
- Run the script.
About this solution
To save time and reduce errors from manually copy and pasting, you can automatically import content from multiple documents into one main document. This solution focuses on aggregating project status reports, but you can edit it to fit your needs.
How it works
The script creates a folder to store the documents from which you want to import content and a template document to start importing from. The script also includes functions that create sample documents to demo this solution.
When a user selects Import summaries from the custom menu, the script gets all the Docs files in the folder and iterates through each. The script looks for a specific string and heading type to identify the summary text it needs to copy. After the text is copied, the script changes the text color of the identifier string to mitigate duplication. The script pastes the summaries into the main document, each in its own single-cell table.
Apps Script services
This solution uses the following services:
- Document service–Creates the template and sample source documents. Iterates through each source document looking for new project summaries to import. Imports the summaries to the main document. Updates the source documents to prevent summaries from being imported more than once.
- Drive service–Creates a folder to store the source documents. Adds the template document and sample source documents to the folder.
- Utilities service–Formats the date that the script adds to the main document each time the script imports summaries from the source documents.
- Base service–Uses the
Session
class to get the script's time zone. The script uses the time zone when adding the date of the import to the main document.
Prerequisites
To use this sample, you need the following prerequisites:
- A Google Account (Google Workspace accounts might require administrator approval).
- A web browser with access to the internet.
Set up the script
Click the button below to make a copy of the Aggregate content document.
Make a copy
Run the script
Run a demo with sample documents
- Click Import summaries > Configure > Run demo setup with sample documents. You might need to refresh the page for this custom menu to appear.
When prompted, authorize the script. If the OAuth consent screen displays the warning, This app isn't verified, continue by selecting Advanced > Go to {Project Name} (unsafe).
Click Import summaries > Configure > Run demo setup with sample documents again.
When prompted, copy the URL of the Drive folder for use in a later step.
Click OK.
Click Import summaries > Import summaries.
When prompted, click OK.
Review the project summaries that were imported from the sample documents.
Add & import a summary
- In a new browser tab, paste the folder URL to open the Project status folder.
- Open the Project ABC file.
- Create a new summary to import by adding the following content to the end of
the document:
- Type
Summary
and set the text style to Heading 3. - Directly underneath
Summary
, insert a 1x1 table. Make sure there are no blank lines in betweenSummary
and the table. - In the table, type
Hello world!
.
- Type
- Switch back to the main document and click Import summaries > Import summaries.
- When prompted, click OK.
- View your latest import at the end of the document.
Review the code
To review the Apps Script code for this solution, click View source code below:
View source code
Code.gs
Menu.gs
Setup.gs
Utilities.gs
Contributors
This sample is maintained by Google with the help of Google Developer Experts.