Google Forms Scripts

Google and Microsoft both allow people to use a little bit of code to make a big impact.

Script editor

Challenge #1

Let's imagine you're running a new program during a sort of free period at school. You need to track students that have the choice of multiple locations. You don't have time to get your school's attendance system in line with this new, flexible program. Instead, you'd like to share a Google Sheet with all your students and have teachers quickly note student locations using that form.

What our script will do

All we've been asked to do is automatically create a new column for every weekday. Column A will be the student's name. Column B needs to be today.

Google Forms script editor uses JavaScript. Don't be afraid to study up a bit.

None of this should be memorized. Use the patient power of GoogleFu to work the problem.

Solution

function dailyColumn() {
  // create a variable that accesses all tabs of my spreadsheet
  var ss = SpreadsheetApp.getActiveSheet();
  
  // create a variable that contains the first sheet
  var sheet = ss.getSheets()[0];
  
  // insert a new column (not zero-indexed like the line above)
  sheet.insertColumnBefore(2); 
  
  // add the date to the column
  var date = Utilities.formatDate(new Date(), "GMT-4", "dd/MM/yyyy");
  sheet.getRange('B2').setValue(date);

}
  

Triggers

Now that we have our solution, we need to have it auto-run every day. For that we'll need to wade into Google's G Suite Developer Hub.

Last updated