i included the table at the bottom - but i have a list of values where column A have dates joined together with dates in column B (two different tables). I want to show reports in two ways - tied to the first date (grouped by) and by the second date (see the ‘waterfall’ of activity over time after original date).
This is for media campaigns where I run a campaign on DAY 1, and receive leads on DAY1, 2, 3…n.
The yellow fields are ‘filled down’ based on the previous row when i have a date populated in date 1 AND new campaign in column c. Each time the campaign changes AND there’s a date in date 1, i want to ‘fill down’ or repeat the date from above, then start over at next campaign.
IF there’s a change to the campaign, but there isn’t a date in date 1, then I want to return date 2. This means there’s something wrong with the data, or there was a campaign that ran outside of the date range that i don’t have the original date for the media, therefore, i want to return date 2 and treat it like a pure ‘waterfall’ - these dates are in red. you’ll note that the yellow are fill down from previous row based on change in campaign, and red is return corresponding date 2 every time there’s a change in campaign without a populated date 1.
I’ve done this in alteryx fairly simply with a multi row formula tool where i can look at row -1 and set rules based on that (row -1 campaign = row 0 campaign AND DATE in row -1 is populated and row 0 date is null, then return date from row -1 else return date 2 from row 0.
Date | Date 2 | column g |
---|---|---|
2022-09-08 | 2022-09-08 | name a |
2022-09-09 | 2022-09-09 | name a |
2022-09-10 | 2022-09-10 | name a |
2022-09-11 | 2022-09-11 | name a |
2022-09-12 | 2022-09-12 | name a |
2022-09-13 | 2022-09-13 | name a |
2022-09-13 | 2022-09-14 | name a |
2022-09-13 | 2022-09-15 | name a |
2022-09-13 | 2022-09-16 | name a |
2022-09-13 | 2022-09-17 | name a |
2022-09-13 | 2022-09-18 | name a |
2022-09-13 | 2022-09-19 | name a |
2022-09-20 | 2022-09-20 | name a |
2022-09-20 | 2022-09-21 | name a |
2022-09-20 | 2022-09-22 | name a |
2022-09-20 | 2022-09-23 | name a |
2022-09-20 | 2022-09-24 | name a |
2022-09-20 | 2022-09-25 | name a |
2022-09-20 | 2022-09-26 | name a |
2022-09-27 | 2022-09-27 | name a |
2022-09-27 | 2022-09-28 | name a |
2022-09-27 | 2022-09-29 | name a |
2022-09-27 | 2022-09-30 | name a |
2022-09-27 | 2022-10-01 | name a |
2022-09-27 | 2022-10-02 | name a |
2022-09-27 | 2022-10-03 | name a |
2022-10-04 | 2022-10-04 | name a |
2022-10-04 | 2022-10-05 | name a |
2022-10-04 | 2022-10-06 | name a |
2022-10-04 | 2022-10-07 | name a |
2022-10-04 | 2022-10-08 | name a |
2022-10-04 | 2022-10-09 | name a |
2022-10-04 | 2022-10-10 | name a |
2022-10-11 | 2022-10-11 | name a |
2022-10-11 | 2022-10-12 | name a |
2022-10-11 | 2022-10-13 | name a |
2022-10-11 | 2022-10-14 | name a |
2022-10-11 | 2022-10-15 | name a |
2022-10-11 | 2022-10-16 | name a |
2022-10-11 | 2022-10-17 | name a |
2022-05-01 | 2022-05-01 | name b |
2022-05-06 | 2022-05-06 | name b |
2022-08-09 | 2022-08-09 | name b |
2022-08-10 | 2022-08-10 | name b |
2022-09-18 | 2022-09-18 | name b |
2021-01-11 | 2021-01-11 | name c |
2021-01-12 | 2021-01-12 | name c |
2021-01-23 | 2021-01-23 | name c |
2021-01-31 | 2021-01-31 | name c |
2021-04-06 | 2021-04-06 | name c |
2021-10-25 | 2021-10-25 | name c |
2022-07-26 | 2022-07-26 | name c |
2022-10-13 | 2022-10-13 | name c |
2022-04-27 | 2022-04-27 | name d |
2020-11-28 | 2020-11-28 | name e |
2021-04-22 | 2021-04-22 | name e |
2021-11-03 | 2021-11-03 | name e |
2021-03-03 | 2021-03-03 | name f |
2023-03-11 | 2023-03-11 | name f |
2021-06-14 | 2021-06-14 | name g |
2021-08-11 | 2021-08-11 | name g |
2023-03-25 | 2023-03-25 | name g |