Перейти к содержимому

5 способов транспонирования данных в Excel (Пошаговое руководство)

Author: Amanda Li Last Modified: 2025-06-05

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


Видео: Транспонирование данных в Excel


Переключение столбцов на строки с помощью Специальной вставки

Примечание: Если ваши данные находятся в таблице Excel, опция Транспонировать при вставке будет недоступна. Сначала вам следует преобразовать таблицу в диапазон, щелкнув правой кнопкой мыши по таблице, затем выбрав "Таблица" > "Преобразовать в диапазон" из контекстного меню.

Шаг 1: Скопируйте диапазон для транспонирования

Выберите диапазон ячеек, где вы хотите поменять строки и столбцы местами, а затем нажмите "Ctrl" + "C", чтобы скопировать диапазон.

Select and copy the range of cells where you want to switch rows and columns

Шаг 2: Выберите опцию Транспонировать при вставке

Щелкните правой кнопкой мыши по первой ячейке целевого диапазона, а затем нажмите значок "Транспонировать" (под "Параметры вставки") из меню правой кнопки мыши.

Right-click on the first cell of the destination range, and click the Transpose icon from the right-clicking menu

Результат

Вуаля! Диапазон транспонирован за считанные секунды!

The range is transposed

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

(AD) Легко изменяйте размеры таблиц с помощью Kutools

Преобразование двумерной таблицы в одномерный список или наоборот в Excel всегда занимает много времени и усилий. Однако, с установленным Kutools for Excel, его инструмент "Преобразовать размеры таблицы" поможет вам выполнить преобразование быстро и легко.

Kutools for Excel's Transpose Table Dimensions tool

"Kutools for Excel" - Включает более 300 удобных функций, значительно облегчающих вашу работу. Получите 30-дневную полнофункциональную бесплатную пробную версию прямо сейчас!


Транспонировать и связать данные с источником

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


Изменение строк на столбцы с помощью функции ТРАНСП

Чтобы превратить строки в столбцы и наоборот с помощью функции "ТРАНСП", выполните следующие действия.

Шаг 1: Выберите такое же количество пустых ячеек, как у исходного набора ячеек, но в другом направлении

Совет: Пропустите этот шаг, если вы используете Excel 365 или Excel 2021.

Допустим, ваша исходная таблица находится в диапазоне A1:C4, что означает, что таблица имеет 4 строки и 3 столбца. Таким образом, транспонированная таблица будет иметь 3 строки и 4 столбца. Это значит, что вы должны выбрать 3 строки и 4 столбца пустых ячеек.

Шаг 2: Введите формулу ТРАНСП

Введите следующую формулу в строке формул, а затем нажмите "Ctrl" + "Shift" + "Enter", чтобы получить результат.

Совет: Нажмите "Enter", если вы пользователь Excel 365 или Excel 2021.

=TRANSPOSE(A1:C4)
Примечания:
  • Вы должны изменить A1:C4 на ваш фактический исходный диапазон, который вы хотите транспонировать.
  • Если в исходном диапазоне есть пустые ячейки, функция "ТРАНСП" преобразует пустые ячейки в нули (0). Чтобы избавиться от нулевых результатов и сохранить пустые ячейки при транспонировании, вам нужно воспользоваться функцией "ЕСЛИ":
  • =ТРАНСП(ЕСЛИ(A1:C4="";"";A1:C4))

Результат

Строки превращаются в столбцы, а столбцы конвертируются в строки.

Table is transposed by using the TRANSPOSE function

Примечание: Если вы используете Excel 365 или Excel 2021, нажав клавишу "Enter", результат автоматически разливается на столько строк и столбцов, сколько необходимо. Убедитесь, что область разлива пуста перед применением формулы; в противном случае возвращаются ошибки #ПРОЛИВ.

Поворот данных с использованием функций ДВССЫЛ, АДРЕС, СТОЛБЕЦ и СТРОКА

Хотя вышеуказанная формула довольно проста для понимания и использования, ее недостатком является то, что вы не сможете редактировать или удалять какие-либо ячейки в повернутой таблице. Поэтому я представлю формулу, использующую функции "ДВССЫЛ", "АДРЕС", "СТОЛБЕЦ" и "СТРОКА". Допустим, ваша исходная таблица находится в диапазоне A1:C4, чтобы выполнить преобразование столбцов в строки и сохранить связь повернутых данных с исходным набором данных, выполните следующие шаги.

Шаг 1: Ввод формулы

Введите следующую формулу в самую верхнюю левую ячейку целевого диапазона (A6 в нашем случае) и нажмите "Enter":

=INDIRECT(ADDRESS(COLUMN(A1)-COLUMN($A$1)+ROW($A$1),ROW(A1)-ROW($A$1)+COLUMN($A$1)))

The formula is entered in the top-left-most cell of the destination range

Примечания:
  • Вы должны изменить A1 на самую верхнюю левую ячейку вашего фактического исходного диапазона, который вы будете транспонировать, и оставить знаки доллара такими, какие они есть. Знак доллара ($) перед буквой столбца и номером строки указывает на абсолютную ссылку, которая сохраняет букву столбца и номер строки неизменными при перемещении или копировании формулы в другие ячейки.
  • Если в исходном диапазоне есть пустые ячейки, формула преобразует пустые ячейки в нули (0). Чтобы избавиться от нулевых результатов и сохранить пустые ячейки при транспонировании, вам нужно воспользоваться функцией "ЕСЛИ":
  • =ЕСЛИ(ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1)-СТОЛБЕЦ($A$1)+СТРОКА($A$1);СТРОКА(A1)-СТРОКА($A$1)+СТОЛБЕЦ($A$1)))=0;"";ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1)-СТОЛБЕЦ($A$1)+СТРОКА($A$1);СТРОКА(A1)-СТРОКА($A$1)+СТОЛБЕЦ($A$1))))

Шаг 2: Копирование формулы вправо и вниз

Выберите ячейку с формулой и перетащите её маркер заполнения (маленький зелёный квадрат в нижнем правом углу ячейки) вниз, а затем вправо на столько строк и столбцов, сколько необходимо.

Результат

Столбцы и строки меняются местами мгновенно.

The columns and rows are switched right away

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

Преобразование столбцов в строки с помощью Специальной вставки и Найти и заменить

Несколько дополнительных шагов с методом Специальной вставки вместе с функцией Найти и заменить позволяют вам транспонировать данные, связывая исходные ячейки с транспонированными.

Шаг 1: Скопируйте диапазон для транспонирования

Выберите диапазон ячеек, которые вы хотите транспонировать, а затем нажмите "Ctrl" + "C", чтобы скопировать диапазон.

Select and copy the range of cells to transpose

Шаг 2: Примените опцию Вставить связь

  1. Щелкните правой кнопкой мыши по пустой ячейке, а затем нажмите "Специальная вставка".

    Right-click on a blank cell, and then click Paste Special

  2. Нажмите на кнопку "Вставить связь".

    Click on Paste Link

Вы получите результат, как показано ниже:

The links to the copied cells are pasted

 Шаг 3: Найдите и замените знаки равенства (=) из результата Вставить связь

  1. Выберите диапазон результата (A6:C9) и нажмите "Ctrl" + "H", а затем замените "=" на "@EO" (или любые символы, которых нет в выбранном диапазоне) в диалоговом окне Найти и заменить.

    Replace = with @EO in the Find and Replace dialog

  2. Нажмите на "Заменить все", а затем закройте диалоговое окно. Ниже показано, как будут выглядеть данные.

    Replacement result

Шаг 4: Транспонируйте замененный результат Вставить связь

Выберите диапазон (A6:C9) и нажмите "Ctrl" + "C", чтобы скопировать его. Щелкните правой кнопкой мыши по пустой ячейке (здесь я выбрал A11) и выберите значок "Транспонировать" из параметров вставки, чтобы вставить транспонированный результат.

Right-click on a blank cell (here I selected A11) and select the Transpose icon from Paste Options

Шаг 5: Верните знаки равенства (=), чтобы связать транспонированный результат с исходными данными

  1. Оставьте выбранными данные транспонированного результата A11:D13, а затем нажмите "Ctrl" + "H", и замените "@EO" на "=" (противоположность "шагу 3").

    Replacement result

  2. Нажмите на "Заменить все", а затем закройте диалоговое окно.

Результат

Данные транспонированы и связаны с исходными ячейками.

Примечание: Исходное форматирование данных потеряно; вы можете восстановить его вручную. После завершения процесса смело удаляйте диапазон A6:C9.

Транспонировать и связать данные с источником с помощью Power Query

Power Query — это мощный инструмент автоматизации данных, который позволяет легко транспонировать данные в Excel. Вы можете выполнить задачу, следуя приведенным ниже шагам:

Шаг 1: Выберите диапазон для транспонирования и откройте редактор Power Query

Выберите диапазон данных для транспонирования. Затем, на вкладке "Данные", в группе "Получить и преобразовать данные", нажмите "Из таблицы/диапазона".

From Table/Range button on the ribbon

Примечания:
  • Если выбранный диапазон данных не находится в таблице, появится диалоговое окно "Создать таблицу"; нажмите "OK", чтобы создать таблицу.
  • Если вы используете Excel 2013 или 2010 и не можете найти "Из таблицы/диапазона" на вкладке "Данные", вам нужно загрузить и установить его со страницы "Microsoft Power Query для Excel". После установки перейдите на вкладку "Power Query", нажмите "Из таблицы" в группе "Данные Excel".

Шаг 2: Преобразуйте столбцы в строки с помощью Power Query

  1. Перейдите на вкладку "Преобразовать". В раскрывающемся меню "Использовать первую строку как заголовки" выберите "Использовать заголовки как первую строку".

    Go to the Transform tab. In the Use First Row as Headers drop-down menu, select Use Headers as First Row

  2. Нажмите на "Транспонировать".

    Click on Transpose

Шаг 3: Сохраните транспонированные данные на лист

На вкладке "Файл" нажмите "Закрыть и загрузить", чтобы закрыть окно "Power Editor" и создать новый рабочий лист для загрузки транспонированных данных.

Click Close & Load

Результат

Транспонированные данные преобразованы в таблицу на новом созданном листе.

The transposed data is converted to a table in a newly created worksheet

Примечания:
  • Дополнительные заголовки столбцов создаются в первой строке, как показано выше. Чтобы продвинуть первую строку ниже заголовков в качестве заголовков столбцов, выберите ячейку внутри данных и нажмите "Запрос" > "Изменить". Затем выберите "Преобразовать" > "Использовать первую строку как заголовки". Наконец, выберите "Главная" > "Закрыть и загрузить".
  • Если в исходном наборе данных были внесены изменения, вы можете обновить транспонированные данные этими изменениями, нажав на значок "Обновить" рядом с таблицей в панели "Запросы и подключения", или нажав кнопку "Обновить" на вкладке "Запрос".

(AD) Преобразуйте диапазон с помощью Kutools за несколько кликов

Утилита "Преобразовать диапазон" в Kutools for Excel может помочь вам легко преобразовать (конвертировать) вертикальный столбец в несколько столбцов или наоборот, или преобразовать строку в несколько строк или наоборот.

Kutools for Excel's Transform Range tool

"Kutools for Excel" - Включает более 300 удобных функций, значительно облегчающих вашу работу. Получите 30-дневную полнофункциональную бесплатную пробную версию прямо сейчас!