Page Summary
-
This solution is a beginner-level automation project that creates an end-to-end offsite activity sign-up system using Google Sheets, Google Forms, and Apps Script.
-
The script uses the Spreadsheet service to manage activity schedules and responses, the Forms service to create and collect preferences, and the Utilities service for formatting data.
-
Users need a Google Account and internet access to set up and run the script by making a copy of the sample spreadsheet.
-
The script can create a form, generate test data, and assign activities based on employee preferences and activity capacity, with results presented in new sheets.
Coding level: Beginner
Duration: 5 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
Create an end-to-end offsite activity sign-up system. The solution creates a form for employees to express their activity preferences, and matches employee preferences to the activity schedule.

How it works
Using an activity schedule in Google Sheets, the script creates a Google Forms form for employees to select their activity preferences. Once the responses are in, the script matches employee preferences with the schedule and capacity of each activity. The matches are provided in two new sheets, one organized by employee and the other by activity.
Apps Script services
This solution uses the following services:
- Spreadsheet service: Holds the activity schedule and form responses, and assigns activities to the employees.
- Forms service: Creates a form for employees to enter their activity preferences.
- Utilities service: Formats strings and dates.
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
To copy the spreadsheet and its attached script, click the following button:
Run the script
- In your copied spreadsheet, click Activities > Create form. You might need to refresh the page for this custom menu to appear.
- When prompted, authorize the script. <<../_snippets/oauth.md>>
- Click Activities > Create form again.
- To generate test responses, click Activities > Generate test data.
- To test the form yourself, click Tools > Manage form > Go to live form.
- Fill out the form and submit it.
- In the spreadsheet, click Activities > Assign activities.
- Review the two new sheets: Activities by person and Activity rosters.
Review the code
To review the Apps Script code for this solution, click View source code: