Как преобразовать список в строку в excel

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

Например, если данные выглядят так: «Регионы продаж» в заголовках столбцов и «Кварталы» с левой стороны:

Данные по регионам в столбцах

Функция Транспонировать переупомешет таблицу, в которой столбцы «Кварталы» отображаются в заголовках столбцов, а слева будут показаны регионы продаж, например:

Данные по регионам в строках

Примечание: Если данные хранятся в таблице Excel, функция Транспонирование будет недоступна. Можно сначала преобразовать таблицу в диапазон или воспользоваться функцией ТРАНСП, чтобы повернуть строки и столбцы.

Вот как это сделать:

  1. Выделите диапазон данных, который требуется переупорядочить, включая заголовки строк или столбцов, а затем нажмите клавиши CTRL+C.

    Примечание: Убедитесь, что для этого нужно скопировать данные, так как не получится использовать команду Вырезать или CTRL+X.

  2. Выберите новое место на том месте на компьютере, куда вы хотите ввести транспонную таблицу, чтобы вместить данные в достаточном месте. В новой таблице будут полностью переоформатироваться все данные и форматирование, которые уже есть.

    Щелкните правой кнопкой мыши левую верхнюю ячейку, в которой нужно ввести транспонировать таблицу, и выберите транспонировать Изображение кнопки транспонирования.

    Меню "Параметры вставки"

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

Советы по транспонированию данных

  • Если данные содержат формулы, Excel автоматически обновляет их в соответствие с новым расположением. Убедитесь, что в этих формулах используются абсолютные ссылки. Если они не используются, перед поворотом данных можно переключаться между относительными, абсолютными и смешанными ссылками.

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

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

Пример транспонии в окне "В этом примере"

Вот как можно транспоннять содержимое ячейки:

  1. Скопируйте диапазон ячеев.

  2. Вы выберите пустые ячейки, в которые вы хотите ввести транспонировать данные.

  3. На вкладке Главная щелкните значок Ввести и выберите Ввести транспонировать.

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

Есть, как минимум, три способа выполнить поставленную задачу:

  1. Преобразовать программе Notepad++
  2. Cтолбец в строку Excel через запятую
  3. Использовать Онлайн-скрипт

Содержание

  1. Преобразование в программе Notepad++ с помощью регулярных выражений
  2. Преобразование столбца в строку через запятую в Excel
  3. Столбик через запятую и обратно онлайн
  4. Список через запятую > в столбик
  5. Столбик > список через запятую

Преобразование в программе Notepad++ с помощью регулярных выражений

Эта программа известна практически всем, кто занимался редактированием сайтов или работал с кодом. Если у вас ее еще нет, советую скачать и поставить.

Вставляем в программу список для преобразования.
Преобразование списка через запятую в столбик в Нотпад
Для примера я взял набор фраз через запятую. Нажимаем комбинацию клавиш Ctrl+H (поиск с заменой), в открывшемся окне ставим метку Режим поиска — Расширенный, Найти: , (запятая и пробел), Заменить на: n Заменить все. Получаем список столбиком.

Если нужно из столбика сделать список через запятую, тогда то же самое, только Найти: rn и Заменить на: , (запятая и пробел).
Если что-то заменилось не так, как надо, делаем отмену Ctrl+Z и пробуем по-другому, например, ищем только n.

Преобразование столбца в строку через запятую в Excel

Используем формулу «лесенка».
Скачать готовый файл можно здесь: 4memo-ru-stolbik-zapyataya.xls
Запятую в самой первой ячейке можно заменить, на что-то другое, если нужно.
Формулу во втором столбце растягиваем вниз, насколько потребуется.
Если полученный список нужно вставить в другой лист эксель, то не забываем избавиться от формул, вставив предварительно данные в блокнот.

Столбик через запятую и обратно онлайн

Этот вариант подойдет для тех, кому нужно срочно, прямо на этой странице, решить задачу конвертации списка — за вас все сделает скрипт.

Список через запятую > в столбик

Разделитель-запятую можно заменить каким-нибудь другим, например, точкой с запятой, только про пробел не забудьте, если он вам нужен.

Столбик > список через запятую

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

Превращение строк в столбцы и обратно

Постановка задачи

Хотим, упрощенно говоря, повернуть таблицу на бок, т.е. то, что располагалось в строке — пустить по столбцу и наоборот:

transpose1.gif

Способ 1. Специальная вставка

Выделяем и копируем исходную таблицу (правой кнопкой мыши — Копировать). Затем щелкаем правой по пустой ячейке, куда хотим поместить повернутую таблицу и выбираем из контекстного меню команду Специальная вставка (Paste Special). В открывшемся диалоговом окне ставим галочку Транспонировать (Transpose) и жмем ОК.

transpose2.gif

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

Плюсы: в транспонированной таблице сохраняется исходное форматирование ячеек.

Способ 2. Функция ТРАНСП

Выделяем нужное количество пустых ячеек (т.е. если, например, исходная таблица была из 3 строк и 5 столбцов, то выделить обязательно нужно диапазон из 5 строк и 3 столбцов) и вводим в первую ячейку функцию ТРАНСП (TRANSPOSE) из категории Ссылки и массивы (Lookup and Reference):

transpose3.gif

После ввода функции необходимо нажать не Enter, а Ctrl+Shift+Enter, чтобы ввести ее сразу во все выделенные ячейки как формулу массива. Если раньше не сталкивались с формулами массивов, то советую почитать тут — это весьма экзотический, но очень мощный инструмент в Excel.

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

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

Способ 3. Формируем адрес сами

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

  • Функция АДРЕС(номер_строки; номер_столбца) — выдает адрес ячейки по номеру строки и столбца на листе, т.е. АДРЕС(2;3) выдаст, например, ссылку на ячейку C2.
  • Функция ДВССЫЛ(ссылка_в_виде_текста) — преобразует текстовую строку, например, «F3» в настоящую ссылку на ячейку F3.
  • Функции СТРОКА(ячейка) и СТОЛБЕЦ(ячейка) — выдают номер строки и столбца для заданной ячейки, например =СТРОКА(F1) выдаст 1, а =СТОЛБЕЦ(А3) выдаст 3.

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

=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))

в английской версии Excel это будет =INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

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

transpose4.gif

Т.е. при копировании формулы вниз по столбцу, она выдает ссылку, которая уходит вправо по строке и наоборот. Чего и требовалось.

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

Минусы: форматирование не сохраняется, но его можно легко воспроизвести Специальной вставкой (вставить только Формат с флажком Транспонировать

Skip to content

6 способов быстро транспонировать таблицу

В этой статье показано, как столбец можно превратить в строку в Excel с помощью функции ТРАНСП, специальной вставки, кода VBA или же специального инструмента. Иначе говоря, мы научимся транспонировать таблицу.

В этой статье вы найдете несколько способов поменять местами строки и столбцы (или столбцы и строки), как бы вы это ни называли, это одно и то же :) Эти решения работают во всех версиях Excel 2016, 2013, 2010, 2007 и ниже, представляют множество возможных сценариев и объясняют наиболее типичные ошибки. Вот о чём мы поговорим:

  • 1. Используем специальную функцию транспонирования
  • 2. Как транспонировать с помощью формул
  • 3. Специальная вставка.
  • 4. Макрос VBA для преобразования строки в столбец
  • 5. Сводная таблица для транспонирования.
  • 6. Преобразование столбцов в строки с помощью специального инструмента

О вкусах не спорят. То же самое и с рабочими привычками. Некоторые пользователи Excel предпочитают организовывать данные вертикально в столбцы, тогда как другие выбирают горизонтальное расположение в строках. И при совместной работе над таблицами вкусы зачастую не совпадают …

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

Транспонирование – это математическая операция. Это преобразование матрицы, в результате чего столбцы становятся строками, а строки превращаются в столбцы. Говоря проще, нужно все значения в строке (горизонталь) перекинуть в столбец (вертикаль).

Способ 1. Использовать функцию ТРАНСП.

В случае, когда вам нужно быстро изменить ориентацию вашей таблицы, можно использовать функцию ТРАНСП (TRANSPOSE в англоязычной версии).

Назначение функции ТРАНСП в Excel – транспонировать строку в столбец, т. е. поменять ориентацию данных с горизонтальной на вертикальную или наоборот.

Функция ТРАНСП в Excel — синтаксис

Функция транспонировать принимает только один аргумент:

= ТРАНСП(массив)

Где массив – это диапазон для транспонирования. Данные преобразуются следующим образом: первая строка исходного диапазона становится первым столбцом нового, вторая строка становится вторым столбцом и так далее.

Синтаксис ТРАНСП не оставляет места для ошибок при создании формулы. Более сложная задача –  правильно записать её на рабочий лист. Если у вас нет большого опыта работы с формулами Excel в целом и формулами массивов в частности, внимательно следуйте приведенным ниже инструкциям.

1. Подсчитайте количество столбцов и строк в исходной таблице.

Эти числа понадобятся вам на следующем шаге.

В этом примере мы собираемся транспонировать небольшую таблицу Excel, которая показывает объем экспорта свежих фруктов по регионам:

2. Выберите такое же количество ячеек, но измените их ориентацию.

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

В нашем случае мы выбираем диапазон из 5 столбцов и 4 строк:

3. Введите формулу ТРАНСП.

Выделив этот пустой диапазон, используйте функцию транспонирования:

=ТРАНСП(A1:D5)

Вот подробные шаги:

Сначала вы вводите знак равенства, имя функции и открывающую скобку: = ТРАНСП(

Затем выберите исходный диапазон с помощью мыши или введите его вручную:

Наконец, введите закрывающую скобку, но не нажимайте клавишу Enter! На этом этапе ваша формула должна выглядеть примерно так:

функция транспонировать в excel

4. Запишите формулу.

Нажмите Ctrl + Shift + Enter, чтобы правильно закончить формулу массива. Зачем это? Потому что формула должна применяться ко всем данным. И это именно то, для чего предназначены формулы массива.

После этого Excel окружит вашу формулу транспонирования {фигурными скобками}, которые видны в строке формул и являются визуальным индикатором формулы массива. Ни в коем случае не набирайте их вручную, это не сработает.

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

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

Преимущества функции ТРАНСП:

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

Слабые стороны функции ТРАНСП:

  • Исходное форматирование не сохраняется в преобразованной таблице, как вы видите на скриншоте выше.
  • Если в исходной таблице есть пустые клетки, вместо них ячейки новой таблицы будут содержать ноль. Чтобы исправить это, используйте ТРАНСП в комбинации с функцией ЕСЛИ, как описано в этом примере ниже: Как транспонировать без нулей.
  • Вы не можете редактировать какие-либо данные в преобразованной таблице, потому что она полностью завязана на исходные данные. Если вы попытаетесь изменить какое-либо значение, то получите ошибку «Вы не можете изменить часть массива».

Итак, какой бы хорошей и простой в использовании не была бы функция ТРАНСП, ей определенно не хватает гибкости. Поэтому она может быть не самым оптимальным вариантом во многих ситуациях.

Как транспонировать таблицу без замены нулей на пробелы.

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

То есть, если при транспонировании строки в столбец программа обнаруживает пустую ячейку, то вместо нее сразу же вставляется ноль. Это особенность Экселя: стоит с пустой ячейкой произвести какую-то математическую операцию, и там тут же появляется ноль. А транспонирование в Excel – это математическая операция с матрицей значений.

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

Если вы хотите оставить в новой таблице по-прежнему пустые ячейки, а не нули, то вложите функцию ЕСЛИ в формулу ТРАНСП, чтобы предварительно проверить, является ли ячейка пустой. Если она пуста, функция ЕСЛИ вернет пустую строку («»), в противном случае предоставит значение для транспонирования:

=ТРАНСП(ЕСЛИ(A1:D5=»»;»»;A1:D5))

Введите формулу, как описано выше (не забудьте нажать Ctrl + Shift + Enter, чтобы правильно завершить формулу массива), и вы получите результат, подобный этому:

Как видите, мы транспонируем не все ячейки, а только непустые.

Советы по использованию ТРАНСП

Как вы только что видели, функция ТРАНСП имеет ряд особенностей, которые могут сбить с толку неопытных пользователей. Приведенные ниже советы помогут вам избежать некоторых типичных ошибок.

1. Как редактировать формулу?

Как функция массива, ТРАНСП не позволяет изменять часть возвращаемого массива. Чтобы отредактировать формулу транспонирования, выберите весь диапазон, к которому относится формула, внесите необходимые изменения и нажмите Ctrl + Shift + Enter, чтобы сохранить обновленную формулу.

2. Как удалить формулу?

Чтобы удалить формулу транспонирования с листа, выберите весь диапазон, на который имеется ссылка в формуле, и нажмите клавишу Del.

3. Как заменить формулу на значения?

Когда вы переворачиваете таблицу с помощью функции ТРАНСП, исходная и новая таблицы связываются. Это означает, что всякий раз, когда вы изменяете какое-либо значение в исходной таблице, соответствующее значение в новой изменяется автоматически.

Если вы хотите разорвать связь между ними, замените формулы вычисленными значениями. Для этого выберите все ячейки преобразованной таблицы, затем нажмите Ctrl + C, чтобы скопировать их в буфер обмена. Кликните правой кнопкой мыши и выберите в контекстном меню «Специальная вставка» > « Значения». Или используйте для вставки значений вместо формул комбинацию клавиш Ctrl+Alt+V.

Способ 2. Как транспонировать с помощью формул

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

Для создания ссылок на строки и столбцы нам понадобятся четыре функции из категории Ссылки и массивы:

  • Функция АДРЕС(номер_строки; номер_столбца) – выдает адрес ячейки по номеру строки и столбца на листе, т.е. АДРЕС(2;3) выдаст, например, ссылку на C2.
  • Функция ДВССЫЛ(ссылка_в_виде_текста) – преобразует текстовую строку, например, «F3» в настоящую ссылку на ячейку F3.
  • Функции СТРОКА() и СТОЛБЕЦ() — выдают номер строки и столбца для заданной ячейки, например =СТРОКА(F1) выдаст 1, а формула =СТОЛБЕЦ(А3) возвратит 3.

Теперь соединяем эти функции, чтобы получить нужную нам ссылку на исходную таблицу. Предположим, координаты её верхнего левого угла – A1.

Вводим в любую свободную ячейку (скажем, в A8) вот такую формулу:

=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))

в английской версии Excel это будет =INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

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

транспонировать формулы в excel

Вот и все! В вашей вновь созданной таблице все столбцы поменяны местами со строками.

Если ваши данные начинаются с некоторой строки, отличной от 1, и столбца, отличного от A, вам придется использовать немного более сложную формулу:

=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(B6) — СТОЛБЕЦ($B$6) + СТРОКА($B$6); СТРОКА(B6) — СТРОКА($B$6) + СТОЛБЕЦ($B$6)))

Где B6 — самая верхняя левая ячейка исходной таблицы. Также обратите внимание на использование абсолютных и относительных ссылок.

Однако транспонированные данные выглядят очень просто и тускло по сравнению с исходными. Всё форматирование потеряно.

Но не расстраивайтесь, эту проблему легко решить. Чтобы восстановить исходное форматирование, выполните следующие действия:

  • Скопируйте исходную таблицу.
  • Выделите получившуюся таблицу.
  • Щелкните её правой кнопкой мыши и выберите «Параметры вставки» > «Форматирование» .

Преимущества: эта формула обеспечивает более гибкий способ замены строк и столбцов в Excel. Это позволяет вносить любые изменения в итоговую таблицу, поскольку вы используете обычную формулу, а не формулу массива.

Недостатки: вижу только один — теряется форматирование данных. Хотя вы можете быстро восстановить его, как описано выше.

Способ 3. Специальная вставка

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

как транспонировать строки в столбцы в Excel

Для этого выполните следующие действия:

  1. Выберите исходные данные. Чтобы быстро выделить всю таблицу, то есть все ячейки с данными в ней, нажмите Ctrl + Home, а потом Ctrl + Shift + End. Вы также можете транспонировать отдельную строку или столбец.
  2. Скопируйте выделенное, щелкнув правой кнопкой мыши и выбрав пункт Копировать в контекстном меню, или нажав Ctrl + C.
  3. Выберите первую позицию целевого диапазона.
    Обязательно выберите клетку, расположенную вне вашей исходной таблицы, чтобы области копирования и области вставки не перекрывались. Например, если у вас сейчас 4 столбца и 10 строк, преобразованная таблица будет иметь 10 столбцов и 4 строки.
  4. Щелкните правой кнопкой мыши целевую ячейку и выберите «Специальная вставка» в контекстном меню, затем выберите «Транспонировать».

транспонированная вставка в excel

Как вы только что видели, функция «Специальная вставка» позволяет выполнять преобразование из строки в столбец (или из столбца в строку) буквально за несколько секунд. Этот метод также копирует форматирование ваших исходных данных, чем добавляет еще один плюс в свою пользу.

Однако у этого подхода есть два недостатка, которые не позволяют называть его идеальным решением чтобы перевернуть данные в Excel:

  • Он не слишком подходит для вращения полнофункциональных таблиц Excel. Если вы скопируете всю таблицу и затем откроете диалоговое окно «Специальная вставка», то обнаружите, что пункт «Транспонировать» неактивен. В этом случае вам нужно либо скопировать ее без заголовков столбцов, либо сначала преобразовать ее в обычный диапазон.
  • Операция Специальная вставка > Транспонировать не связывает новую таблицу с исходными данными. Поэтому она хорошо подходит только для одноразовых преобразований. Всякий раз, когда исходные данные меняются, вам нужно будет повторить процесс и повернуть таблицу заново. Никто не захочет тратить свое время на преобразование одних и тех же строк и столбцов снова и снова, верно?

Как транспонировать таблицу и связать ее с исходными данными

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

  1. Скопируйте строки, которые нужно преобразовать в столбцы (или столбцы, которые нужно превратить в строки).
  2. Выберите пустую ячейку на том же или другом листе.
  3. Откройте диалоговое окно «Специальная вставка», как описано в предыдущем примере, и нажмите «Вставить связь» в нижнем левом углу.

  1. Результат будет примерно таким:

  1. Выберите новую таблицу и откройте диалоговое окно Excel «Найти и заменить» (или нажмите Ctrl + H, чтобы сразу перейти на вкладку Заменить).
  2. Замените все знаки «=» на «###» или любые другие символы, которых нет нигде в ваших реальных данных. Таким нехитрым образом мы преобразуем наши формулы-ссылки в текст.

Эта операция превратит ваши данные во что-то немного пугающее, как вы видите на скриншоте ниже. Но не паникуйте – еще 2 шага, и вы достигнете желаемого результата.

  1. Скопируйте диапазон со значениями «###» в буфер обмена, а затем используйте Специальная вставка > Транспонировать, чтобы преобразовать столбцы в строки.

  1. Наконец, откройте диалоговое окно «Найти и заменить» еще раз, чтобы отменить изменение, т.е. обратно заменить все «###» на «=», и восстановить ссылки на исходные данные.

Это длинноватое, но элегантное решение, не правда ли? Единственным недостатком этого подхода является то, что исходное форматирование теряется в процессе, и вам нужно будет восстановить его вручную (в дальнейшем в этом руководстве я покажу вам быстрый способ сделать это).

Способ 4. Транспонировать матрицу данных в Excel с помощью макроса VBA

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

  Sub TransposeColumnsRows()
     Dim SourceRange As Range
     Dim DestRange As Range
      Set SourceRange = Application.InputBox(Prompt:="Выделите диапазон для транспонирования", Title:="Транспонирование строк в столбцы", Type:=8)
     Set DestRange = Application.InputBox(Prompt:="Укажите верхнюю левую ячейку новой таблицы", Title:="Транспонирование строк в столбцы", Type:=8)
      SourceRange.Copy
     DestRange.Select
     Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
     Application.CutCopyMode = False
  End Sub 

Чтобы добавить макрос на лист, следуйте инструкциям, описанным в разделе Как вставить и запустить код VBA в Excel .

Примечание. Транспонирование с помощью VBA имеет ограничение в 65536 элементов. Если ваш массив превышает этот предел, дополнительные данные будут автоматически отброшены.

Как использовать макрос для преобразования строки в столбец

Вставив макрос в книгу, выполните следующие шаги, чтобы повернуть таблицу:

  1. Откройте целевой рабочий лист, нажмите Alt + F8, выберите макрос TransposeColumnsRows и нажмите «Выполнить».

  1. Выберите диапазон, который вы хотите преобразовать, и нажмите OK :

  1. Выберите верхнюю левую позицию целевого диапазона и нажмите ОК:

Матрица значений транспонирована. Наслаждайтесь результатом :)

как транспонировать строку в столбец excel

Способ 5. Сводная таблица.

Еще один способ как можно транспонировать таблицу в Excel — с помощью сводной таблицы. К сожалению, этот способ работает только в одном направлении — из столбцов переворачивает данные в строки. Но его преимущество, по сравнению с предыдущими, – это возможность фильтровать данные и использовать всю мощь сводных таблиц. 

Сначала необходимо создать сводную таблицу (здесь есть подробная инструкция). Выделяем исходные данные:

Создаем её на новом листе.

В свойствах сводной таблицы отключаем общие и промежуточные итоги по столбцам и строкам.

Перетаскиваем поля в макете таблицы, и получаем результат – таблица повёрнута набок.

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

Если вам нужно выполнять преобразования строки в столбец достаточно часто, то возможно, вы действительно ищете более быстрый и простой способ. К счастью, у меня есть такой способ в моем Excel, как и у других пользователей надстройки Ultimate Suite  :)

Позвольте мне продемонстрировать вам, как перенести строки в столбцы в Excel буквально за пару кликов при помощи инструмента транспонирования таблицы:

  1. Выделите любую отдельную ячейку в таблице, перейдите на вкладку AblebitsTools > Transform и нажмите кнопку Transpose.

  1. В большинстве случаев настройки по умолчанию работают нормально, поэтому вы просто нажимаете «Транспонировать», ничего не меняя.

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

Готово! Таблица транспонирована:

Если вам интересно попробовать этот и более 60 других профессиональных инструментов для Excel, я приглашаю вас загрузить пробную версию  Ultimate Suite. 

Итак, вы можете выбрать для себя любой из этих шести методов транспонирования таблицы в Excel.

Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге!

Как сделать диаграмму Ганта Думаю, каждый пользователь Excel знает, что такое диаграмма и как ее создать. Однако один вид графиков остается достаточно сложным для многих — это диаграмма Ганта.  В этом кратком руководстве я постараюсь показать…
Как сделать автозаполнение в Excel В этой статье рассматривается функция автозаполнения Excel. Вы узнаете, как заполнять ряды чисел, дат и других данных, создавать и использовать настраиваемые списки в Excel. Эта статья также позволяет вам убедиться, что вы…
Быстрое удаление пустых столбцов в Excel В этом руководстве вы узнаете, как можно легко удалить пустые столбцы в Excel с помощью макроса, формулы и даже простым нажатием кнопки. Как бы банально это ни звучало, удаление пустых…
Как быстро заполнить пустые ячейки в Excel? В этой статье вы узнаете, как выбрать сразу все пустые ячейки в электронной таблице Excel и заполнить их значением, находящимся выше или ниже, нулями или же любым другим шаблоном. Заполнять…

Эта статья содержит пояснения, сделанные в Microsoft Excel 2010, но она так же применима и для других популярных версий Microsoft Excel — 2007 и 2013.

Как преобразовать столбец в строку?

1. Выделяете столбец и выбираете в контекстном меню пункт «Копировать» (или нажимаете комбинацию горячих клавиш Ctrl + C).

Преобразование столбца в строку в Excel

2. Выбираете ячейку, с которой будет начинаться строка после преобразования.

3. Выбираете в контекстном меню пункт «Специальная вставка» (или нажимаете комбинацию горячих клавиш Ctrl + Alt + V).

4. Ставите чекбокс «транспонировать» и нажимаете ОК.

Специальная вставка транспонированного столбца

Важно! Столбец и строка не должны иметь общих ячеек.

Как преобразовать строку в столбец?

Следуете вышеописанным рекомендациям, только выбираете первоначально строку.

Как преобразовать несколько столбцов в строки или несколько строк в столбцы?

Следуете вышеописанным рекомендациям, только выбираете несколько столбцов или строк.


Обратите внимание, что при проведении преобразования можно одновременно в полной мере воспользоваться режимом специальной вставки, например, вставить значения ячеек.

Как преобразовать столбец в строку в Excel – простой способ

​Смотрите также​ можно воспользоваться функцией​End With​ X&, ArrX(), ArrY()​3 zz3​ ставите галку «Транспонировать»​ соседней ячейке от​ снова Вы меня​: Не получается копированием​ относительными, абсолютными и​ данные или форматирование,​ сначала или используется​. С ней, можно​ переведена автоматически, поэтому​ Вы можете преобразовать​Copy​ снимки экрана из​Иногда мы аккуратно и​ ТРАНСП​End Sub​For A =​4 cc1​

​ и нажимаете ОК.​ получившегося столбца? Чтобы​ выручили. Только подскажите:​ у меня что-то.​ смешанными ссылками.​ которое уже есть.​ Функция ТРАНСП повернуть​ быстро переключаться данные​ ее текст может​ строки в столбцы.​(Копировать) или просто​ версии Excel 2010​

Преобразовываем столбец в строку

​ старательно вводим данные​Joma​Nic70y​

Преобразовать столбец в строку в Excel

​ 1 To Cells(Rows.Count,​4 cc2​xcripz​ было более понятно​ протягиваю столбец С​ Объясните поподробней, пожалуйста.​Если вы хотите повернуть​Щелкните правой кнопкой​ строк и столбцов.​ из столбцов в​ содержать неточности и​​ Вот небольшой пример:​​ нажмите​ х64. В других​​ в столбцах Excel​​: Ребят, сразу извиняюсь​

Преобразовать столбец в строку в Excel

​: без доп. столбца:​ 1).End(xlUp).Row​4 cc3​: Спасибо, но обычное​ прикрепил файл.​ вниз — все​​ Может формулу подскажете.​​ данных часто для​

Преобразовать столбец в строку в Excel

​ мыши на левый​​Вот как это сделать:​​ строки, или наоборот.​ грамматические ошибки. Для​​После копирования и специальной​​Ctrl+C​​ версиях, начиная с​​ и только к​

Преобразовать столбец в строку в Excel

​ за глупые вопросы,​xcripz​

Преобразовать столбец в строку в Excel

​B = 2​5 bb1​ транспонирование — не​—​

Преобразовать столбец в строку в Excel

​ как у Вас,​ Мне нужно, чтобы​ просмотра с разных​​ верхний угол, от​​Выделите диапазон данных, который​Например, если ваш данных​

Преобразовать столбец в строку в Excel

​ нас важно, чтобы​ вставки с включенным​.​ Excel 2003, этот​

​ концу понимаем, что​ я с Экселем​
​: Большое спасибо за​
​Do While Cells(A,​

​5 bb2​

office-guru.ru

Транспонирование данных из строк в столбцы и наоборот

​ совсем то, что​​В реальности таких​ протягиваю столбец D​ рядом с числом​ углов, рассмотрите возможность​ которого требуется вставить​ требуется переупорядочить, включая​ выглядит так, где​ эта статья была​ параметром​Теперь щелкните правой кнопкой​ приём работает аналогично,​ гораздо удобнее расположить​ на Вы….​ помощь, макрос помог.​ B).Value <> «»​5 bb3​ нужно.​ строк 2000+, поэтому​ вниз — все​ в строку соответствующие​ создания сводной таблицы​

​ транспонированные таблицы, а​ заголовки строк или​ продажи по регионам​ вам полезна. Просим​Transpose​ мыши в ячейке,​ но могут быть​​ их горизонтально, т.е.​​Транспонирование не подойдет.​—​ReDim Preserve ArrY(X),​Nic70y​

​Результат:​ вариант вручную всё​ как у Вас,​ значения оказались, а​ , чтобы вы​ затем выберите​

Данные по регионам в столбцах

​ столбцов, а затем​ в заголовках столбцов​ вас уделить пару​(Транспонировать) строки преобразовались​ где требуется поместить​ отличия в интерфейсе,​ не в столбцах,​Я хочу стобы​

Данные по регионам в строках

​Пардон, что ответил спустя​​ ArrX(X)​: вариант с доп.столбцом:​1 2 3 4 5​ это делать кажется​ а остальные протягиваю​ не в столбец​ можете быстро сводные​транспонировать​

​ нажмите клавиши CTRL+C.​

  1. ​ и и кварталы​ секунд и сообщить,​ в столбцы.​ преобразованные данные и​ структуре меню и​

    ​ а в строках.​​ при вносе значения​ полтора месяца​ArrY(X) = Cells(A,​​Rioran​​xx1 yy1 zz1​ ужасным​ — пустые почему-то​

  2. ​ (см. вложение)​ данные, перетаскивая поля​.​Примечание:​ в левой:​ помогла ли она​Это отличный способ расположить​ выберите из контекстного​ диалоговых окнах.​
    ​ Да, ради этого​ в строку на​zaak88​ 1).Value: ArrX(X) =​:​ cc1 bb1​​Samaretz​ Изображение кнопки транспонирования​ (файл во вложении)​

    Меню

  3. ​ShAM​ из области строк​Повернув данные, можно удалить​ Убедитесь, что копирование данных​Функция ТРАНСП будет переупорядочить​

Советы по транспонированию данных

  • ​ вам, с помощью​ информацию на листе​ меню пункт​Итак, у нас имеется​ стоило потрудиться, чтобы​ Листе 1, она​: Добрый день, друзья!​ Cells(A, B).Value​xcripz​xx2 yy2 zz2​:​

  • ​Pelena​: Где-то я этот​ в область столбцов​ исходную таблицу и​ для этого с​ таблице таким образом,​ кнопок внизу страницы.​ Excel так, как​Paste Special​ вот такая таблица​ понять, что с​ атоматом переносилась в​ Хочется в таблице​

support.office.com

преобразовать столбец в строку (Формулы/Formulas)

​X = X​​, здравствуйте.​ cc2 bb2​xcripz​

​: Диапазоны в формуле​​ файл уже видел.​ (или наоборот) в​
​ данные в новой​

​ помощью команды «​​ что кварталы отображены​ Для удобства также​ Вам нужно.​(Специальная вставка):​ Excel:​ самого начала надо​ Лист 2.​ строки одной таблицы​ + 1: B​У меня решение​

​xx3 yy3 zz3​​,​ надо увеличить, можно​

​klimenkoal83​​ списке полей сводной​ таблице останутся без​Вырезать​ в заголовки столбцов​ приводим ссылку на​

​Урок подготовлен для Вас​​В открывшемся диалоговом окне​Данные расположены в двух​

​ было делать всё​​Я там даже​ сделать столбцами другой,​ = B +​ простеньким макросом. Никакого​ cc3 bb3​Выделяете свой массив,​ с запасом. В​: Да, в другой​ таблицы.​ изменений.​» или не​ и областей продаж​

​ оригинал (на английском​​ командой сайта office-guru.ru​Paste special​ столбцах, но мы​ наоборот! Не спешите​ формулу прописал в​

​ транспортировать неудобно, очень​​ 1​

excelworld.ru

Преобразование строки в столбец (Формулы/Formulas)

​ прописывания формул -​​Нужно:​ копируете его в​ файле на 500​ теме другим способом​klimenkoal83​Если данные содержат формулы,​ работает сочетание клавиш​ можно будет увидеть​
​ языке) .​
​Источник: http://www.howtogeek.com/howto/12366/convert-a-row-to-a-column-in-excel-the-easy-way/​(Специальная вставка) выберите​ хотим сделать таблицу​ удалять проделанную работу​ А1 на Лист​%) :)

​ много позиций, если​​Loop​​ один тык на​​1 xx1​
​ буфер обмена, встаете​ строк сделала​ хотел решить данную​: как преобразовать столбец​ Excel автоматически обновляет​ Ctrl + X.​ в левой части​Если у вас есть​Перевел: Антон Андронов​ пункт​ горизонтальной и расположить​ и начинать всё​

​ 2, а вот​​ есть возможность, то​Next A​ кнопку и готово.​1 xx2​
​ на ячейку, которая​
​klimenkoal83​
​ задачу, но и​ в строку (смотрите​
​ их в соответствии​Выберите новое расположение, где​
​ экрана, следующим образом:​ лист с данными​
​Автор: Антон Андронов​
​Transpose​
​ те же данные,​
​ заново. В Excel​
​ как ее протянуть,​
​ прописать формулой. Спасибо!!!​
​ActiveSheet.UsedRange.Value = «»​
​ Пример во вложении.​
​1 xx3​
​ будет левой верхней​
​: Спасибо! Буду разбираться.​
​ там молчат(​
​ вложение)​
​ с новым расположением.​
​ требуется вставить транспонированные​
​Примечание:​

​ в столбцах, которые​​Примечание:​

​(Транспонировать) и нажмите​​ но в двух​​ есть простой способ​​ не знаю….​
​_Boroda_​With Application.WorksheetFunction​Перед вставкой результата​2 yy1​ ячейкой нового массива,​xcripz​
​Pelena​Tachkin​ Проверьте, используют ли​
​ таблицы обеспечение свободного​
​Если данные в​ вам нужно повернуть​
​Мы стараемся как​ОК​ строках. Выделите ячейки,​
​ транспонировать всю таблицу​
​Я Вам уже​: Так нужно?​
​Cells(1, 1).Resize(X, 1).Value​ очищает лист от​
​2 yy2​ щелкаете правой кнопкой​: Здравствуйте. Подскажите, как​
​: С двумя доп.​: Копировать- Специальная вставка​ эти формулы абсолютные​ места, чтобы вставить​
​ таблице Excel, функция​
​ для изменения порядка​
​ можно оперативнее обеспечивать​
​.​
​ которые необходимо преобразовать.​ целиком и сохранить​
​ ответил в Вашей​200?'200px':''+(this.scrollHeight+5)+'px');">=ИНДЕКС($A2:$A99;СТОЛБЕЦ(A2))​
​ = .Transpose(ArrY)​
​ значений.​

​2 yy3​​ мыши, щелкаете по​

​ преобразовать строку в​​ столбцами​ — Транспонировать​
​ ссылки. Если нет,​
​ данные на листе.​ трансп будет недоступно.​ yes

excelworld.ru

преобразовать столбцы в строки (Формулы/Formulas)

​ команд в строках,​​ вас актуальными справочными​Теперь Ваши столбцы преобразовались​ Затем щелкните правой​ структуру.​ теме и даже​miranim​Cells(1, 2).Resize(X, 1).Value​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub Rio_Rotation()​

​3 zz1​​ пункту «Специальная вставка».​
​ столбец, чтобы заголовок​

​klimenkoal83​​Или формулами надо?​ перед поворотом данных​ Новую таблицу, вставьте​

​ Вы можете Преобразовать​​ используйте функцию​ материалами на вашем​ в строки!​ кнопкой мыши и​
​В этой статье мы​
​ файл приложил. Посмотрите​: zaak88, как вариант,​ = .Transpose(ArrX)​Dim A&, B&,​3 zz2​ В открывшемся окне​
​ строки отображался в​: Pelena, спасибо огромное,​klimenkoal83​ можно переключиться между​ существует полностью перезапишет​ таблицу в диапазон​
​транспонировать​ языке. Эта страница​Точно таким же образом​ выберите пункт​ приводим примеры и​

excelworld.ru

​ там.​

Do you want to rotate your data, changing your Excel columns to rows or vice versa?

A company’s sales by region displayed by a horizontal and vertical table. 

Switching data from columns to rows or from rows to columns is known as transposing the data. When you convert columns into rows, the dimensions of data and the cell address will also change. Therefore, you should be careful while transposing the data. There are several ways to transpose columns to rows. We list three simple ways you can do this.

Method 1: use the transpose feature in paste drop-down menu

Let’s take the example of regional sales data in a table. Our data include row headers, column headers, and numerical data. Take a look at the images below and follow the steps below to convert the data in columns to row data and vice versa.

Step 1: Select the data set you want to transpose.

select data in Excel

Step 2: On the Home tab, in the clipboard group, click Copy. You can also use the shortcut key Ctrl+C (Command+C on the Mac).

Step 3: On the worksheet, select the top-left cell of the destination.

Step 4: On the Home tab, in the clipboard group, click Paste and then click Transpose. 

Home tab, in the clipboard group, click Paste and then click Transpose

When using this method, there is no link between the source and destination tables. If you change the source data, the transposed data does not change.

Method 2: use the transpose() function to convert excel columns to rows

Another way of doing this is to use the actual Transpose() function.

Step 1: Select the destination area. In this case, as the original is five rows by four columns, this is an area four rows deep and five columns across.

Step 2: Press the F2 function key to enter into edit mode while the target area is still selected, or click in the Formula Bar.

Step 3: Write “=” (without quotes) followed by the Transpose function, and in brackets, select the range you want to transpose.

Write “=” (without quotes) followed by the Transpose function, and in brackets, select the range

Step 5: In some versions of Excel (especially versions earlier than Excel 2019), you may need the combination of Ctrl+Shift+Enter keys to save this formula. However, in later versions of Excel, you can press either Enter or Ctrl+Shift+Enter.

transpose function excel

When using the Transpose function, if you change the values in the source range, the values in the transposed range automatically update. A disadvantage of using the Transpose function is that this array formula may break when you make changes to the number of source rows or columns. Therefore, you need to be careful if you are handling complex data ranges.

Method 3 – using paste special

If you need more control over your transposition of columns to rows and vice versa, you can use the Paste Link option in the Paste Special drop-down menu.

In the previous method, if the source range changed, the Transpose formula could break. This can be avoided by using Paste Link. This pastes the cell references into each cell. If the values in the source range are changed, the linked cells will also change. Though this function sounds complicated, it’s fairly simple, provided you follow the steps correctly.

Step 1: Copy the data range and go to the top-left of the destination range on the same worksheet.

copy data range

Step 2: Press the combination of Ctrl+Alt+V (Command+Ctrl+V on the Mac) to get the Paste Special dialogue box. Then press the Paste Link button. The result is that the cell references of the range are copied as formulas.

paste special dialogue box, paste link button

Step 3: Select the range you just pasted in the destination range and hold down Ctrl+H (or Command+H on the Mac) to invoke the Find and Replace dialogue box.

find and replace dialogue box

Step 4: In this box, enter “=” (without quotes) in the “Find what” field and “HS=” (without quotes) in the “Replace with” field, and click the Replace All button. The formulas are converted into text, as you have just replaced the “=” with “HS=.” You can use text other than “HS,” but you must convert the formulas into standard text. We are only using “HS” as a placeholder to help us move values in the spreadsheet.

find what =,replace with HS=, replace all

Step 5: Copy this second range. Select the destination range where you want the transposed range to go. Hold down the Ctrl+Alt+V keys (Command+Ctrl+V on the Mac) to invoke the Paste Special dialogue box again. Check the Transpose option and click OK. This will convert the columns to rows.

paste special dialogue box, transpose

Step 6: Now you can convert the transposed data back to formulas. Hold down Ctrl+H again (Command+H on the Mac) to invoke the Replace dialogue box. This time, enter “HS=” (without quotes) in the “Find what” field, “=” (without quotes) in the “Replace with” field, and click the Replace All button.

find and replace dialogue box

Now you have the live-transposed range of data without using the Transpose function. You have swapped your Excel columns to rows and vice versa.

live-transposed range of data

Microsoft Excel is an important part of your toolkit, especially if you manage any kind of data. It allows you to store and analyze data easily and with great flexibility. Learning MS Excel can be easy if you put your mind to it. And, of course, our fun and comprehensive course on Excel is always available to help you along.

Would you like to learn more shortcut keys, such as the Ctrl+Alt+V combination shown in this article? If so, read our article on Excel Keyboard Shortcuts.


Frequently Asked Questions

How do I convert multiple columns to rows in Excel?

You cannot transpose entire columns, but smaller ranges of data in multiple columns can be. You need to select the data first. Highlight the first range to be copied, then hold down Ctrl (Command on the Mac) and highlight the other ranges. Copy the data. Then go to where you want the data to be pasted, and go to Home – Paste – Transpose.

What is the shortcut to convert rows to columns in Excel?

The shortcut to convert rows to columns or transpose columns to rows is to press Ctrl+Alt+V (Control+Command+V on the Mac), the letter ‘e,’ then Enter.

How do I switch rows and columns in an Excel chart?

There are three ways to transpose rows and columns in an Excel chart. The first is to go to Chart Design – Switch Row/Column. The second is to right-click in some empty space in the chart, click on “Select Data,” and click on “Switch Row/Column.” Thirdly, you can also go to Chart Design – Select Data – Switch Row/Column.

Если необходимо преобразовать массив в столбец или строку (рис. 1), можно воспользоваться функцией Индекс.

Рис. 1. Массив преобразован в столбец

Скачать статью в формате Word, примеры в формате Excel

Функция ИНДЕКС возвращает значение, хранящееся в ячейке (являющейся элементом массива). Какую ячейку выбрать, функция указывает по горизонтальному и вертикальному номеру ячейки, отсчитываемому от левого верхнего угла массива. Например (рис. 2):

Рис. 2. Пример «работы» функции ИНДЕКС

=ИНДЕКС(A1:G16;3;5)

где      A1:G16 – область массива

3 – номер строки массива

5 – номер столбца массива

то есть, индекс задал ячейку Е3

Чтобы легче понять формулу ИНДЕКС, преобразующую массив в столбец, выполним последовательные шаги (см. также лист «Рис. 3» Excel-файла):

  1. Функция СТРОКА() возвращает номер строки той ячейки, в которой она забита (рис. 3); столбец I;
  2. Функция ЧИСЛСТОЛБ($A$1:$G$16) возвращает число столбцов в массиве;
  3. Функция ОКРВВЕРХ(СТРОКА()/ЧИСЛСТОЛБ($A$1:$G$16);1) возвращает номер столбца, ячейки, значение который мы хотим получить, столбец J; дает значение 1 для первых 7 значений (в общем случае, для первых N значений, где N – число столбцов в массиве);
  4. Функция ОСТАТ(СТРОКА();ЧИСЛСТОЛБ($A$1:$G$16)+0,0001) возвращает номер от 1 до 7 (в общем случае, от 1 до N, где N – число столбцов в массиве); получается, что идет перебор индексов: сначала первый индекс равен 1 (строка), а второй изменяется от 1 до 7 (столбец); далее строка = 2, а столбец перебирается от 1 до 7 и т.д., пока не пройдемся по всем строкам массива; +0,0001 – это маленькая хитрость; без этой добавочки при делении 7/7 будет получаться 0 в остатке, а нам нужно получить 7; эта формула расположена в столбце K;
  5. Функция ИНДЕКС($A$1:$G$16;ОКРВВЕРХ(СТРОКА()/ЧИСЛСТОЛБ($A$1:$G$16);1); ОКРВВЕРХ(ОСТАТ(СТРОКА();ЧИСЛСТОЛБ($A$1:$G$16)+0,0001);1)) возвращает значение из ячейки; см. столбец L
    1. Массив, где ищется значение, выделен желтым
    2. Номер строки внутри массива – зеленым
    3. Номер столбца внутри массива – серым

В Excel-файле представлено преобразование массива в столбец и строку. При этом приведено два варианта преобразования:

  • Сначала по строкам, затем по столбцам массива
  • Сначала по столбцам, затем по строкам массив

Понравилась статья? Поделить с друзьями:
  • Как преобразовать слово в число в excel
  • Как преобразовать сканированный документ в word онлайн бесплатно
  • Как преобразовать сканированный документ в word для редактирования текста
  • Как преобразовать сканированные документы в word
  • Как преобразовать скан в excel