REFRESH and REPEAT: automate an action!

You want to automate an action and run it regularly in a spreadsheet? You can now do it without any add-ons or plug-ins or scripts.

There are two functions in dashdash for this purpose: REFRESH and REPEAT. REFRESH points at a range of cells (or a single cell) and recalculates the expression in this cell in a certain interval. REPEAT recalculates an expression in a certain interval directly as part of the formula.

In most cases, REFRESH is a better choice.


  • Range - the cell or range to be refreshed periodically.
  • Interval (optional) - the time between repetitions (default is 60 minutes).
  • Unit (optional) - “min” for minutes, “h” for hours, “d” for days, “w” for weeks, “m” for months (default is “minutes”).
  • Delay (optional) - the time before the first repetition (default is 1 interval).

Example: =REFRESH(A1,1,"h").

Returns value: Returns as value the time of the next repetition. In the example, re-executes cell A1 after 1 hour.

Here are the details for REPEAT:
=REPEAT(expression, interval, [start_time]).

  • Expression - the expression to be recalculated periodically.
  • Interval - the time interval in whole minutes that will lapse between value changes. The minimum value is 1 minute, the maximum value is 43200. Example: 1440 for daily repetition.
  • Start time (optional) - the time in minutes that will pass before the first execution of the timer. Any decimals are ignored.

Example: =REPEAT(NOW(),1).

Returns value: Returns value of Expression every time it recalculates according to Interval and Start time. In the example, returns a time stamp that updates every 1 minute. If you want to start the first execution only after one hour, the example would be adjusted to =REPEAT(NOW(),1,60).