Scheduling and repeating actions

Learn how to automate your spreadsheets using REFRESH, REPEAT, and SCHEDULE.

IntroAnchor Icon

So, you know how to use integrations, execute functions, parse the data, and create tables - but wouldn’t it be great if you could just do some things automatically? Funnily enough, we’ve thought about that ;).

In this lesson, we’ll cover how to:

  • Use checkboxes with an automation function
  • Send scheduled emails

Let’s go 🚀!

Automation functionsAnchor Icon

At Rows, we have three automation functions - which one you choose to use all depends on what you want to do:

Do you want to...Then use....
Refresh data in a cell or range periodically. For example, every minute of every day.REFRESH()
Repeat a formula or cell periodically. For example, every hour of every day.REPEAT()
Schedule an action on specific days of the year and at specific times. For example, every Monday of June at 09:00.SCHEDULE()


Generally, use REFRESH() whenever you can, and REPEAT() when you need to automated a function nested inside of another.

REFRESHAnchor Icon

REFRESH() lets you refresh the data in a cell or range periodically. This is particularly handy if you have a range of cells where you’d like to trigger an update or a formula execution.


Let’s just quickly cover the interval, delay, and unit parameters:

intervalNoThe interval between cell or range refreshes. By default this is 60 (min). The minimum is 1 (min).
unitNoThe unit of time to use with the interval. Choose between:
- "min" for minutes (default)
- "h" for hours
- "d" for days
- "w" for weeks
- "m" for months
delayNoThe time until the first refresh. By default this is 1 (min). The minimum is 0 (min).
intervalNoThe unit of time to use with the delay. Choose between:
- "min" for minutes (default)
- "h" for hours
- "d" for days
- "w" for weeks
- "m" for months

REPEATAnchor Icon

REPEAT() lets you repeat the execution of a function (or a cell that contains a function) periodically. This automation function is great when you want to include the function within the actual formula, and not just refer to a cell. Its syntax is pretty similar to REFRESH().

kb-function-repeat (2)


SCHEDULE() allows you to execute functions or cells at very specific times or intervals. This function is great when you require to execute a function at a specific time or day, such as every Monday of June at 11 am.


taskYesThe formula or cell to execute. For example NOW(), A1, or B2:B7.
scheduleYesWhen and how often to execute the task. We use a special syntax for scheduling, which you can read about in depth in our SCHEDULE() article.
time_zoneNoThe UTC or GMT timezone in HH:MM to use when evaluating schedule_message. For example: Indian Standard Time (IST) = "UTC+05:30". By default, this is set to UTC.

Spreadsheet practiceAnchor Icon

In our spreadsheet, we're going to add an automation where we send a daily email of all the searches that users perform. We're also going conditionalize the schedule with a checkbox. If it's checked - we perform the automation, if it isn't, we don't.

  1. Go to your App Log table.
  2. In cell D1, create a Checkbox by going to More action elements and selecting Checkbox.
  3. In cell E1, type in this formula:


❇️ Done! Now, when the checkbox is checked, we'll send an email every day at 09:00 with the full log of search queries. Cool right?

Course summaryAnchor Icon

This course was intense - we know. But just look at what you learned:

  • How do add dynamic elements to your live spreadsheets
  • What JSON is and how to parse it
  • How to automatically get the data you want into a table
  • How to automate functions

And that’s pretty amazing. Don’t forget that!

But of course, you can still do so much more with Rows - and that’s why you should definitely go on and check out our Advanced course, where we’ll take you through working with APIs, modifying JSON just as you want it, and how to manage multiple integrations. Trust us - you don’t want to miss it.

Ready to dive even deeper? Let’s go 🚀!