Мне нужно транспонировать записи из таблицы, но по группам, как показано в примере ниже. Мне нужно сделать это для многих записей, обозначенных номером строки в начале таблицы.

Нужно перенести из:

1   LastModified$Time   2011-05-10 12:57:03.0
1   Count1  0
1   Count2  58
1   LastModified$UserName   mbeardsell
2   LastModified$Time   2010-03-31 21:45:53.0
2   Count1  0
2   Count2  0
2   LastModified$UserName   MBeardsell
3   LastModified$Time   2006-12-13 12:55:47.0
3   Count1  1
3   Count2  0
3   LastModified$UserName   markhall

чтобы:

    LastModified$Time   Count1  Count2  LastModified$UserName
1   2011-05-10 12:57:03.0   0   58  mbeardsell
2   2010-03-31 21:45:53.0   0   0   MBeardsell
3   2006-12-13 12:55:47.0   1   0   markhall

PS Я не понимаю ответы, которые я получаю. Я собираюсь перефразировать мой вопрос, чтобы быть более ясным. Я хочу быть в состоянии сделать это:

Если у меня есть значения:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Я хочу переставить их по пять наборов следующим образом:

1   2   3   4   5
6   7   8   9   10
11  12  13  14  15

Я должен сделать это для многих записей, и я не могу остановиться и пройти через каждые пять ячеек и набрать = Transpose(....)

3 ответа3

0

Проще всего будет:

  • Запустите автофильтр в LastModified $ Time
  • во втором столбце результатов укажите ссылку на ячейку Count 1 и скопируйте
  • в третьем столбце результатов укажите ссылку на ячейку Count 2 и скопируйте
  • в четвертом столбце результатов укажите ссылку на ячейку UserName и скопируйте
  • очистить фильтр, скопировать значения вставки
  • заменить LastModified $ Time на Nothing (как в Nothing)
  • замените LastModified $ UserName на Nothing (как в Nothing)
  • заменить Count1 на Nothing (как в Nothing)
  • заменить Count2 на Nothing (как в Nothing)
  • Удалить пустые строки (с автофильтром)
  • добавить свои названия
  • Вы сделали
0

Аналогично ответу @ Nutsch, но (возможно) с меньшим риском ошибки (без формул) и в случае, если ваши данные начинаются как две колонки:

  • В Data, Text to Columns (разделенные пробелом) [при необходимости для разбора одного столбца].
  • Скопируйте ColumnA:D в ColumnE и в I и в, M.
  • Удалить (сдвинуть вверх) E1:P1, затем I1:P1, затем M1:P1.
  • Добавьте Row1 и перетащите текст из ColumnB в метки столбцов, чтобы они подходили.
  • Отфильтруйте все, с помощью ColumnB отмените выбор LastModified $ Time.
  • Удалить строку3 до конца.
  • За исключением ColumnA и ColumnC, удаляйте столбцы без меток.
  • Удалить фильтр, отформатировать в соответствии с шириной столбца.

Выше (примерно) описано визуально, но с учетом пересмотренного элемента вопроса:

Пример SU495953

0

Я нашел это решение самым простым:

https://www.extendoffice.com/documents/excel/3360-excel-transpose-every-5-rows.html

Убедитесь, что ваш единственный столбец данных находится в столбце A, начиная с A1

  1. Вставьте эту формулу в новую ячейку рядом:

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

  1. Просто измените оба вхождения числа "5", чтобы они соответствовали размеру вашей группы. (В данном случае - пересмотренная презентация - это 5)

  2. Перетащите формулу вправо, чтобы она соответствовала размеру вашей группы. (В этом случае перетащите через 5 столбцов)

  3. Перетаскивайте формулу вниз, пока ваши данные не перестанут отображаться (вы получите "0")

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