Преобразовать один ко многим данным в столбцы - PullRequest
1 голос
/ 12 февраля 2020

Учитывая эти данные:

data source

Как мне преобразовать его так, чтобы это выглядело так:

target output

Есть два столбцы в источнике данных key (title) и value (responsibility). Мне нужно преобразовать его так, чтобы у нас был столбец key (title), а затем столбцы n, где n - это наибольшее число из value ключа, например 3 на рисунке выше. Следовательно, столбцы должны быть:

Title, 1, 2, 3.

Значения в каждом столбце 1, 2, 3 должны соответствовать значениям в исходных данных.

Любая комбинация формулы приветствуется - я считаю, комбинация Transpose и / или Query (pivot) подходит, но я не могу собрать его вместе.

В случае, если это слишком сложно, мы можем поместить перечисление непосредственно в источник данных, но было бы неплохо иметь формулу работать без этого. Например:

enter image description here

Пример листа: https://docs.google.com/spreadsheets/d/1InYZ12VuuaSg0s3fiFTCx8BnwEan5JsqpsNBF973lWc/edit?usp=sharing

1 Ответ

0 голосов
/ 12 февраля 2020

попробовать:

=QUERY({A:C}, 
 "select Col1,max(Col3) 
  where Col1 is not null 
  group by Col1 
  pivot Col2", 1)

0


или:

=ARRAYFORMULA(QUERY({A:A, COUNTIFS(A:A, A:A, ROW(A:A), "<="&ROW(A:A)), B:B}, 
 "select Col1,max(Col3) 
  where Col1 is not null 
  group by Col1 
  pivot Col2", 1))

0

...