Updating Status Based on RYGG symbols of Children Rows and RYGG Formula
New day, new formula conundrums!
For these formulas, I'm looking to update the status of my PARENT rows (2 levels) based on the RYGG symbol as well as having the RYGG symbol is based the CHILDREN rows' Task Status column. I have both working but I feel like they could be cleaner and just wanted to get a second set of eyes on it.
Here's a screenshot of my tasks:
Here's the RYGG formula as of now: =IF(Lvl@row = "0", "", IF([Task Status]@row = "Completed", "Gray", IF([Task Status]@row = "Not Applicable", "Gray", IF([Task Status]@row = "Escalation", "Red", IF([Due Date]@row < TODAY(), "Red", IF([Due Date]@row <= TODAY(3), "Yellow", IF([Due Date]@row >= TODAY(4), "Green")))))))
~ For statuses all RYGG should be based on the "Due Date" column. I have the following options (this will show what color I'm expecting):
Not Started (Red if past due, Gray if no date)
In Progress (Red if past due, Yellow if within 3 days, Green if not past due)
Delayed (Red if past due, Yellow all other times)
Escalation (Red)
On Hold (Red if past due, Gray all other times) <-- I don't think this is fully reflected
Completed (Gray)
Not Applicable (Gray)
Here's the TASK STATUS formula as of now: =IF(CONTAINS("Red", CHILDREN(RYGG@row)), "Escalation", IF(CONTAINS("Yellow", CHILDREN(RYGG@row)), "In Progress", IF(CONTAINS("Green", CHILDREN(RYGG@row)), "In Progress", "Completed")))
~ For the Level 1 and Level 2 statuses (Med and Light blue lines) I'd like these status to be updated based on what we see in the CHILDREN rows. I was originally going off of the symbols but I don't think that will capture everything.
Not Started (Everything is not started)
In Progress (Anything is In Progress)
Delayed (Anything is Delayed - should override all other statuses)
Escalation (Anything is "Escalation" - should override all other statuses)
On Hold (Anything is "On Hold")
Completed (Everything is "Completed")
Not Applicable (Everything is "Not Applicable")
Oof!! Thank you to anyone who can help me knock these out!
~Jaime
Best Answer
-
It would actually go in the one with the "Complete".
=IF(COUNTIFS(CHILDREN(), OR(@cell = "Completed", @cell = "Not Applicable")) = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Completed"
Basically we want to count all child cells that are either "Complete" or "Not Applicable" and if the count of those cells is the same as the count of all child cells, then output "Complete".
Answers
-
After looking at this over the weekend, I realized that basing my PARENT Status off of the RYGG is not going to work. Mostly because I have multiple use cases for the Red, Yellow, and Gray status balls. So, instead, I would like to build the PARENT Status formula off of the CHILDREN in the "Task Status" column. Here's what I'm still looking to do there:
Not Started (Everything is not started)
In Progress (Anything is In Progress)
Delayed (Anything is Delayed - should override all other statuses)
Escalation (Anything is "Escalation" - should override all other statuses)
On Hold (Anything is "On Hold")
Completed (Everything is "Completed")
Not Applicable (Everything is "Not Applicable")
I believe I was also able to update my RYGG formula when I came back with fresh eyes so no further assistance needed there.
I'm going to keep plugging away, but thank you in advance if someone is able to assist!
~Jaime
-
After looking at this over the weekend, I realized that basing my PARENT Status off of the RYGG is not going to work. Mostly because I have multiple use cases for the Red, Yellow, and Gray status balls. So, instead, I would like to build the PARENT Status formula off of the CHILDREN in the "Task Status" column. Here's what I'm still looking to do there:
Not Started (Everything is not started)
In Progress (Anything is In Progress)
Delayed (Anything is Delayed - should override all other statuses)
Escalation (Anything is "Escalation" - should override all other statuses)
On Hold (Anything is "On Hold")
Completed (Everything is "Completed")
Not Applicable (Everything is "Not Applicable")
Here's an updated screenshot of what I have working so far:
Here's my current formula: =IF(COUNTIFS(CHILDREN(), @cell = "Completed") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Completed", IF(COUNTIFS(CHILDREN(), @cell = "Not Started") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Not Started", IF(COUNTIFS(CHILDREN(), @cell = "Not Applicable") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Not Applicable", IF(COUNTIFS(CHILDREN(), "Escalation") > 0, "Escalation", IF(COUNTIFS(CHILDREN(), "Delayed") > 0, "Delayed", IF(COUNTIFS(CHILDREN(), "On Hold") > 0, "On Hold", "In Progress"))))))
@Paul Newcome I saw a few of your posts related to these types of formulas and I was wondering if you may be able to help 1) make sure how I have this setup is accurate (It seems so!) and 2) I'm hoping you can help me figure out ONE more thing...
In the screenshot above you'll see that I have a "Not Applicable" statuses on rows 4 and 23-26. Since everything else is "Not Started", I'd ideally like to have rows 2 and 3 show as "Not Started" instead of "In Progress". Is this possible without making my default "Task Status" for Rows 4 and 23-26 "Not Started"?
Thank you in advance for your help!!!
~Jaime
-
Answer to the last question is yes. Sum the N/A value into the Not Started and Completed value calculations. You want the calc to assume that N/A is no different from the other answers given, as it effectively removes the row from the count. (count of not started + count of n/a = count of rows) You could do the reverse and subtract the count of n/a from total rows counted. Works either way.
Working on the formula build and veracity. But it generally looks right at first glance. Will circle back if/when I can, and if @Paul Newcomesomeone doesn't beat me.
-
@Austin Smith Thank you for responding.
I'm assuming you mean to update the following part of the formula (for Completed and Not Started), but am not sure how to change the syntax. Can you assist with an example?
=IF(COUNTIFS(CHILDREN(), @cell = "Completed") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Completed"
Would it go here:
=IF(COUNTIFS(CHILDREN(), @cell = "Completed") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "", @cell = "Not Applicable")), "Completed"
-
It would actually go in the one with the "Complete".
=IF(COUNTIFS(CHILDREN(), OR(@cell = "Completed", @cell = "Not Applicable")) = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Completed"
Basically we want to count all child cells that are either "Complete" or "Not Applicable" and if the count of those cells is the same as the count of all child cells, then output "Complete".
-
@Paul Newcome Sadly, This didn't work out exactly as I expected. Here's the updated formula I have used:
=IF(COUNTIFS(CHILDREN(), @cell = "Completed") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Completed", IF(COUNTIFS(CHILDREN(), @cell = "Not Started") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Not Started", IF(COUNTIFS(CHILDREN(), @cell = "Not Applicable") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Not Applicable", IF(COUNTIFS(CHILDREN(), "Escalation") > 0, "Escalation", IF(COUNTIFS(CHILDREN(), "Delayed") > 0, "Delayed", IF(COUNTIFS(CHILDREN(), "On Hold") > 0, "On Hold", "In Progress"))))))
Here's a screenshot of what's happening now:
In Row 3, I was hoping to see "Not Started". In Row 23, I was hoping to see "Not Applicable" (because they are "all" Not Applicable. In Rows 11-17, which I hid, I have them set as "Not Started". With this combination, I was hoping Row 2 would show as to show "Not Started".
Ideal state would be:
All "Not Started" OR A combo of "Not Applicable" and "Not Started" = "Not Started"
All "Completed" OR A combo of "Not Applicable" and "Completed" = "Completed"
All "Not Applicable" = "Not Applicable"
-
I don't see where you included the "Not Applicable" to the various COUNTIFS using the OR as I had suggested.
-
@Paul Newcome Apologies! I pasted the wrong formula. Here is the updated version I am using:
=IF(COUNTIFS(CHILDREN(), OR(@cell = "Completed", @cell = "Not Applicable")) = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Completed", IF(COUNTIFS(CHILDREN(), OR(@cell = "Not Started", @cell = "Not Applicable")) = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Not Started", IF(COUNTIFS(CHILDREN(), @cell = "Not Applicable") = COUNTIFS(CHILDREN(), OR(@cell = "", @cell <> "")), "Not Applicable", IF(COUNTIFS(CHILDREN(), "Escalation") > 0, "Escalation", IF(COUNTIFS(CHILDREN(), "Delayed") > 0, "Delayed", IF(COUNTIFS(CHILDREN(), "On Hold") > 0, "On Hold", "In Progress"))))))
-
I would suggest simply rearranging the order of your IFs.
You have:
Completed
Not Started
Not Applicable
Escalation
Delayed
On Hold
all else In Progress
I would suggest:
Not Applicable
Escalation
Delayed
On Hold
Completed
Not Started
all else In Progress
-
Thank you Paul. I think that's got it.
-
Happy to help. 👍️
Help Article Resources
Categories
- All Categories
- 14 Welcome to the Community
- Smartsheet Customer Resources
- 64.2K Get Help
- 419 Global Discussions
- 221 Industry Talk
- 461 Announcements
- 4.8K Ideas & Feature Requests
- 143 Brandfolder
- 142 Just for fun
- 58 Community Job Board
- 462 Show & Tell
- 32 Member Spotlight
- 1 SmartStories
- 299 Events
- 38 Webinars
- 7.3K Forum Archives
Check out the Formula Handbook template!