Stuck trying to convert multiple selections in individual rows

Hi there, I’m a beginner and I’m designing my first doc, but now I’m stuck trying to understand how multiple selections work for Coda.

I have a table (let’s call it Data) that in a column (Workers) looks up to another table with the multiple selection actived. For every data entry / row, I select one or more workers to work on it.

I want to generate another table (Workflow) with a row for every pair data/worker.

So, for example, if I have the data X in the first row and the workers John and Paul, in the new table I need:

Row 1: X in column “data” and John in column “worker”
Row 2: X in column “data” and Paul in column “worker”

And so on with the other rows.

In short, I need to convert those multiple selections from one cell to individual rows. For Coda, however, those workers are considered part of a unique cell. Any idea how to workaround?

PS: is it possible that those individual rows generate themselves from time to time or with some button? I’ve found this closed topic: Lists from Multiple Selections [Table A] to Individual Rows [Table B] but I’m struggling to understand how to do what they suggested there.

Thank you in advance.

I can’t think of a way to do this that doesn’t require you to manually generate the results (e.g. via a button), unless there are additional constraints like each worker is at most selected in one data row.

For the Formula to generate results, it would be something like (nested ForEach()):

Data
  .ForEach(
    WithName(
      CurrentValue,
      iData,
      Workers
        .ForEach(
          [Workflow (results)]
            .AddRow(
              [Workflow (results)].Data,
              iData,
              [Workflow (results)].Worker,
              CurrentValue)))

Demo:

Thank you so much, in the end I managed to obtain my solution with this formula:

Sequence(1,thisRow.Professionista.Split(“,”).Count()).FormulaMap(Table.AddRow(Table.Servizio,thisRow.Servizio,Table.[Column 3],thisRow.Professionista.Nth(CurrentValue),Table.Frutto,thisRow.Frutto.Nth(CurrentValue)))

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