1

У меня есть набор из 110 номеров в Excel. Я хочу разделить это на 11 столбцов по 10 строк в каждом.

Итак, для столбца:

324
292
300
120
276
320
984
136
300
280
69
289
266
292
266
494
315
118
295
289

Я хочу, чтобы вывод был:

324 69
292 289
300 266
120 292
276 266
320 494
984 315
136 118
300 295
280 289

Что я пробовал до сих пор

  1. Назначено =A11 в B1, =A21 в C1, =A31 в D1, а затем используется автозаполнение. Однако это дает формулу =D11 в E1 и, следовательно, не работает.

  2. Использование текста в столбцах. Это обеспечивает только разделение данных для разделителя, и теперь существует способ разделения на основе количества строк.

Самый похожий вопрос, который я нашел, здесь, где цель противоположна моей (объединение нескольких столбцов в один).

Это и это решают аналогичную проблему, но они копируют строку данных мудро.

Этот вопрос пытается решить ту же проблему в R.

Я знаю, что это можно решить с помощью такой библиотеки, как pandas, но я думаю, что в Excel должен быть простой способ сделать это.

3 ответа3

2

Предполагая, что 324 находится в A1, поместите это в B1:

=OFFSET($A$1,(COLUMN()-1)*10+ROW()-1,0)

и перетащите его вниз и вправо.

Идея: использовать строку назначения и столбец для подачи смещения от 1-го значения.

2

Есть несколько способов сделать это. Предыдущий ответ по р. phidot использовал OFFSET. Функции OFFSET работают, но классифицируются как энергозависимые функции. Это не конец света, это просто означает, что он пересчитывает каждый раз, когда что-то в электронной таблице изменяется. Обычные формулы пересчитываются только тогда, когда что-то, что влияет на них, изменяется. В качестве энергонезависимой альтернативы я предлагаю использовать функцию INDEX ниже. Скопируйте его на 10 строк, затем скопируйте вправо так далеко, как вам нужно.

=INDEX($A:$A,(COLUMN(A1)-1)*10+ROW(A1))
1

Ваша проблема может быть решена с помощью нескольких значений Helper:

Как это устроено:

  • Я предполагаю, что ваши данные находятся в диапазоне A2:A41.
  • Напишите 0 в D1 , 10 в E1 и 20 в F1 .

NB

  • D1 , E1 и F1 - клетки-помощники.

  • 30 и 40 должны иметь значения в G1 и H1 , если вам нужны дополнительные строки для копирования.

  • Напишите эту формулу в D2 и заполните, затем направо.

    =IF(ROW(D2)>11,"",INDEX($A:$A,COLUMN($A$1)+ROW($A10)+D$1))

  • При необходимости измените ссылки на ячейки в формуле.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .