Create a weekly repeating task

Hey All,
I’m looking to organize a table of tasks with due dates. Tasks can either be weekly repeating tasks, or one-off tasks. The weekly tasks vary which day of the week they hit on.

Rather than have a list of a million separate rows for the repeating tasks, each with their own date, I’m trying to create an automation that will, every Monday at 9am or something, reset the weekly dates for the repeating task, so someone can look at the table/calendar and see exactly what the weeks tasks are.

Is this something that I can do in Coda? Or is there another easier way that I can visualize this?

Hey there!

You can defintiely do that. Just use a coda automation!

Here’s a quick rundown on automation basics

You can trigger a time based automation to go off specifically on Monday at 9am if you’d like to

The Then step would run a modify rows call that would modify the due date for only your repeating tasks in the table.

Send over a doc link if you want more specific and targeted help!

Thank you! That video was super helpful and got me almost there, but unfortunately I still can’t figure out how to modify the date itself.

Is there a resource where I can learn how to modify dates? Essentially looking for a code that will “add” 7 days to each date, every seven days, so that the due date is always “This thursday” or “This Wednesday” in mm/dd/yyyy format.

Here you go! Take a look at this doc, breaks down a lot of fundamental concepts

This should round out what you’re trying to do - there is a formula called Days() which will be your best friend. Additionally, Dates in Coda are actually just numbers behind the scenes, so you can actually just add dates like this:

Today() + 7

Or you can say

DateColumn + 7

Or to get yesterday

today() -1

From the coda school :point_down:

I’m so close…

I can’t figure out the final formula (non coding background) to add 7 to the dates in the column called “Due Date” .

I’ve tried =[Task View].[Due date] + (7) but for some reason it isn’t working?

You are so close!

You are going to need to run a loop. A loop essentially runs a specific action for each item in a list.

For example, if we looped over this list 1, 2, 3, 4 and multiplied each value by 4, we would get:

4,8,12,16

Whereas, if you just tried to multiply that whole list by 4, you would get an error. You can’t multiply a LIST by numbers. You can only multiply numbers by numbers

You were trying to do the equivalent. When you run a ModifyRows() action, you are returned a LIST of values.

As you have your ModifyRows() set up, it’s going to try to update them all at once to the SAME value. And when you said TaskView.DueDate + 7 you were trying to ADD the number 7 to a giant list of values.

How we loop in Coda is with a formula called forEach() - Heres some further documentation on how that formula works! :point_down:

Here is what I did:

Created a button on the list that has the items I want to repeat weekly, with the following formula:

image

Then added an automation rule that simply does a filter action and presses the button for any items that are in the past, I also have a toggle on my items where I can set them to “Repeat” or not

image

So basically anything that becomes overdue, will get picked up by the filter and then have its button pressed, which adds +7 days to the date. “Update Repeating Date” in the screenshot above is the button in this instance.

1 Like


It worked! Thank you so much for your help

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.