Переместить таблицу в стиле матрицы в 3 столбца в Excel

У меня есть таблица в стиле матрицы в excel, где B1: Z1 – заголовки столбцов, а A2: A99 – заголовки строк. Я хотел бы преобразовать эту таблицу в таблицу с тремя столбцами (заголовок столбца, заголовок строки, значение ячейки). Неважно, в каком порядке находится новая таблица.

ABCDABCABC 1 H1 H2 H3 1 H1 R1 V1 1 H1 R1 V1 2 R1 V1 V2 V3 => 2 H1 R2 V4 or 2 H2 R1 V2 3 R2 V4 V5 V6 3 H1 R3 V7 3 H3 R1 V3 4 R3 V7 V8 V9 4 H2 R1 V2 4 H1 R2 V4 5 H2 R2 V5 5 H2 R2 V5 6 H2 R3 V8 6 H3 R2 V6 7 H3 R1 V3 7 H1 R3 V7 8 H3 R2 V6 8 H2 R3 V8 9 H3 R3 V9 9 H3 R3 V8 

Я играл с функцией OFFSET для создания всей таблицы, но мне кажется, что требуется сочетание TRANSPOSE и V / HLOOKUP.

благодаря

РЕДАКТИРОВАТЬ

Мне удалось найти правильные формулы. Если данные в Sheet1, как в моем примере выше, формулы идут в Sheet2:

 [A1] =IF(ROW() <= COUNTA(Sheet1!$B$1:$Z$1)*COUNTA(Sheet1!$A$2:$A$99), OFFSET(Sheet1!$A$1,0,IF(MOD(ROW(),COUNTA(Sheet1!$B$1:$Z$1))=0,COUNTA(Sheet1!$B$1:$Z$1),MOD(ROW(),COUNTA(Sheet1!$B$1:$Z$1)))),"") [B1] =IF(ROW() <= COUNTA(Sheet1!$B$1:$Z$1)*COUNTA(Sheet1!$A$2:$A$99),OFFSET(Sheet1!$A$1,IF(MOD(ROW(),COUNTA(Sheet1!$A$2:$A$99))=0,COUNTA(Sheet1!$A$2:$A$99),MOD(ROW(),COUNTA(Sheet1!$A$2:$A$99))),0),"") [C1] =IF(ROW() <= COUNTA(Sheet1!$B$1:$Z$1)*COUNTA(Sheet1!$A$2:$A$99),OFFSET(Sheet1!$A$1,IF(MOD(ROW(),COUNTA(Sheet1!$A$2:$A$99))=0,COUNTA(Sheet1!$A$2:$A$99),MOD(ROW(),COUNTA(Sheet1!$A$2:$A$99))),IF(MOD(ROW(),COUNTA(Sheet1!$B$1:$Z$1))=0,COUNTA(Sheet1!$B$1:$Z$1),MOD(ROW(),COUNTA(Sheet1!$B$1:$Z$1)))),"") 

Формулы ограничены B1: Z1 для заголовков и A2: A99 для строк (при необходимости их можно увеличить до максимума). Формула COUNTA () возвращает количество ячеек, которые действительно имеют значения, что ограничивает количество строк, возвращаемых в строки заголовков *. В противном случае формулы могли бы продолжать бесконечность из-за функции MOD.

Мне нравится этот вопрос 🙂

Попробуйте эти функции. Вставьте их в h0, r0, v0 и перетащите их вниз

  hrv 0 (a) (b) (c) 1 | | | | | | 2 \ / \ / \ / 3 vvv 

где:
H = метка заголовка
R = ярлык строки
V = метка значения

(A) = OFFSET ($ A $ 1, INT (H2 / 99) + 1, MOD (H2,99) +1,1,1)
(B) = OFFSET ($ A $ 1, INT (H2 / 99) +1,0,1,1)
(C) = OFFSET ($ A $ 1,0, MOD (H2,99) +1,1,)

Где H2 – столбец со значениями: 0,1,2,3 …

Несколько недель назад я увидел немного более обобщенную версию решения, предоставленного @Dick Kusleika в StackOverflow: Преобразование строки с столбцами данных в столбец с несколькими строками в Excel 2007 . Кажется, что у него нет ссылок на отдельные строки (вместо этого используется ROW() ), но при этом требуется, чтобы количество столбцов было жестко закодировано.

  • Документ Excel не может открыть
  • Сводная таблица - суммирование нескольких независимых столбцов данных
  • Заполните в Excel, но на основе нескольких значений
  • Почему резка ячейки в Excel не работает должным образом?
  • Группа анализа не видна
  • Excel: как создать несколько строк из одного
  • Excel - столбцы для одной ячейки
  • Как сохранить файл Excel как CSV, не теряя длинный текст?
  • Извлечь числа из ячеек, содержащих смешанные альфа-числовые строки
  • Почему Excel считает CSV-файлы SYLK?
  • Удалить повторяющиеся строки?
  • Interesting Posts

    Вычисление новой долготы, широты от старых + n метров

    Передача ссылок на указатели в C ++

    Найден один или несколько многократно определенных символов

    Где hasoop mapreduce framework отправляет мои инструкции System.out.print ()? (стандартный вывод)

    inotify с помощью NFS

    Как настроить время отображения уведомлений рабочего стола в Google Chrome?

    Ищете четкое определение того, что такое «токенизатор», «парсер» и «лексеры» и как они связаны друг с другом и используются?

    Pinging * .5 и ответы от * .4

    Сделать отправку альтернативного имени пользователя в очередь очереди принтера

    RecyclerView: обнаружена несогласованность. Недопустимая позиция позиции

    Как отклонить диалог, нажав на него вне диалога?

    Плагин проверки jQuery – добавление правил, применимых к нескольким полям

    Добавить текст в начало каждой другой строки в Notepad ++

    Требуется ли заземление настольного электропитания?

    Вызывает статические методы через объект «плохая форма»? Зачем?

    Давайте будем гением компьютера.