У меня есть список данных, которые мне нужно переставить определенным образом на следующем листе.

наборы данных

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

ожидаемый результат

Можно ли сделать так, чтобы данные автоматически располагались по функциям / макросам?

2 ответа2

0

Вы можете легко достичь этого с помощью сводной таблицы:

  1. выберите ячейку в ваших данных, перейдите на вставку - сводную таблицу, нажмите ОК
  2. добавить все столбцы как заголовки столбцов
  3. выберите все данные в вашей сводной таблице и нажмите CTRL+C (копия)
  4. вставить специальное - значения и форматирование чисел на новое место

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

0

Не уверен, как вы хотите данные на следующем листе отформатированы. Чтобы соответствовать диаграммам, я предполагал, что A2-> A2, B2-> A3 и т.д. До A3 -> A13. Шаг 1 назначьте "Spot" в качестве имени для A1 на исходном листе. ($ a $ 1 можно использовать, если вы не хотите использовать имена)

Шаг 2 смещен для пошагового прохождения данных с использованием имени Val

  • Val = OFFSET(точечная, 1+INT((СТРОКА ()- 2)/10), МО (СТРОКА ()- 2,10))

Шаг 3, используйте тест, чтобы отличаться от пустой ячейки и 0 в исходных данных

  • = Если (Val = "", "", Вал)

Альтернатива и объяснение

  • RW = 1+INT((ROW() - 2)/10) это вычисляет компонент строки смещения. 10 = насколько широки данные. Если бы было больше (или меньше) столбцов, то 10 нужно было бы изменить. -2 - для начала вывода во втором ряду. Это может быть скорректировано, если это необходимо. Цель состоит в том, чтобы сделать первый ряд () равным нулю.

  • CW = MOD (ROW() - 2,10) Показывает смещение компонента столбца. Математика похожа на математику в том, что 10 - это ширина, а -2 - для первого ряда. Мод возвращает остаток после деления (0,1,2,3,4,5,6,7,8,9,0,1,2 ...)

Используя эти имена, Вэл становится

  • Вал = смещение (спот, RW, CW)

Spot и RW, CW могут быть скорректированы по мере необходимости в зависимости от того, где вы начинаете данные и сколько столбцов. Если выходная зона станет шириной в 2 столбца, то их будет незначительной корректировкой на RW и CW для включения +column()- 1 и изменения ширины на 5 вместо 10

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