How do add columns in smartsheets dynamically based on a condition ?
I have the date of implementation of the project and I need to dynamically add the columns based on the date. Like for example if I had a 1-2-2024 as my date. It must give ,me 12 months for that date like march 2024 to jan 2025 each column contains 1 month a total of 12 columns and adding to it I have so many projects some may have different dates and it must add the months that are not there in the exciting months. A sample example is show below.
Answers
-
Two suggestions for using addons to accomplish this:
- Collect the data vertically instead and then pivot it to produce a horizontal grid layout of your final results. You'll need the Pivot app for that.
- Leverage Bridge to create the columns for you. You can trigger the workflow by row add or change in the dates. Then read the existing columns on the sheet with a Get Sheet step. Then, have GPT write some Javascript code for you that determines the columns needed based on the date, then compares that list of needed columns to the existing columns to arrive at a set of columns needed to add. Final step then is to call a Child Workflow with the set of columns that need adding, that child workflow would then be a single Add Column step to add the necessary column(s) to the sheet.
There really isn't a way to do this without the addons, or without getting so convoluted with a slew of Move Row automations, that it would be faster simply to add the columns as needed by hand.
Help Article Resources
Categories
- All Categories
- 14 Welcome to the Community
- Smartsheet Customer Resources
- 64.1K Get Help
- 412 Global Discussions
- 221 Industry Talk
- 459 Announcements
- 4.8K Ideas & Feature Requests
- 143 Brandfolder
- 141 Just for fun
- 58 Community Job Board
- 461 Show & Tell
- 31 Member Spotlight
- 1 SmartStories
- 299 Events
- 38 Webinars
- 7.3K Forum Archives
Want to practice working with formulas directly in Smartsheet?
Check out the Formula Handbook template!
Check out the Formula Handbook template!