Forum Discussion
Combining Rows based on the ID of that table
- 4 years ago
You can do this with a small tweak to Group By.
Click Group By under the Home tab and group by ID taking the max over Value.
This generates code that looks like this:
= Table.Group(#"Changed Type", {"ID"}, {{"Value", each List.Max([Value]), type nullable text}})We don't actually want List.Max though. Replace that with Text.Combine like this:
= Table.Group(#"Changed Type", {"ID"}, {{"Value", each Text.Combine([Value], ", "), type text}})
I did this and everything looked great (the top row of data was combined and concatenated). I refreshed my data and had a new row that needed to be brought in to the existing merged row b/c it had the same ID and it didn't bring it in. It now has a separate row.
The 7332 is the key. this is what it currently looks like with the first row being the result of the inital grouping:
| ID | P Number | Store Number | File Number | Names of Product |
| 7332 | 6325 | 7 | 3921, 34749 | Teflon Foot, Compensating Foot |
| 7332 | 6325 | 7 | 3925 | Piping Foot |
This is what it should look like based after today's data refresh:
| ID | P Number | Store Number | File Number | Names of Product |
| 7332 | 6325 | 7 | 3921, 34749, 3925 | Teflon Foot, Compensating Foot, Piping Foot |
Do I have to regroup every time I have a data refresh?