Когда вам нужно перенести список данных в одну ячейку на листе, обычно вы можете применить Объединить функция для объединения списка ячеек в одну ячейку, но это будет сложно, если необходимо объединить огромные данные. В этой статье я расскажу о некоторых быстрых приемах, которые помогут вам решить эту задачу в Excel.
Перенести данные из столбца в одну ячейку с помощью функции, определяемой пользователем
Перенесите данные из столбца в одну ячейку с помощью Kutools for Excel
За исключением функции Concatenate для объединения списка значений ячеек, вы можете применить следующий код VBA, чтобы получить результат как можно быстрее.
1. Удерживайте ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.
2. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.
Код VBA: перенос данных из столбца в одну ячейку
Function transposeRange(Rg As Range)
'updateby Extendoffice
Dim xCell As Range
Dim xStr As String
For Each xCell In Rg
If Not IsEmpty(xCell.Value) Then
xStr = xStr & xCell.Value & ","
End If
Next
transposeRange = Left(xStr, Len(xStr) - 1)
End Function
3. Затем сохраните и закройте этот код, вернитесь на лист и введите эту формулу: = транспонированный диапазон (A1: A10) в пустую ячейку, чтобы поместить результат, и нажмите Enter key, вы получите, что все значения ячеек в столбце были расположены в одной ячейке, см. снимок экрана:
Внимание: В приведенном выше коде A1: A10 — это диапазон списка, который вы хотите перенести в одну ячейку, а также вы можете разделить объединенный контент с другими разделителями, такими как запятая, тире, пробел и т. д., просто изменив запятую в скрипте xStr = xStr & xCell.Value & «,».
Если у вас есть Kutools for Excel, с его мощным инструментом —Сочетать, вы можете объединить данные в столбце, строке или диапазоне в одну ячейку.
После установки Kutools for Excel, пожалуйста, сделайте следующее Бесплатная загрузка Kutools for Excel от Yhao сейчас! )
1. Выберите столбец данных, который вы хотите объединить в одну ячейку.
2. Нажмите Кутулс > Слияние и разделение > Комбинируйте строки, столбцы или ячейки без потери данных, см. снимок экрана:
3. В появившемся диалоговом окне выберите Объединить в одну ячейку под Чтобы объединить выбранные ячейки в соответствии со следующими параметрами, а затем укажите разделитель для разделения объединенного содержимого, см. снимок экрана:
4. Затем нажмите Ok or Применить кнопку, и вы получите следующий результат:
Скачать и бесплатную пробную версию Kutools for Excel Сейчас !
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (6)
Оценок пока нет. Оцените первым!
Если у вас есть таблица с данными в столбцах, которые необходимо повернуть для переупорядочивать их по строкам, используйте функцию Транспонировать. С его помощью можно быстро переключать данные из столбцов в строки и наоборот.
Например, если данные выглядят так: «Регионы продаж» в заголовках столбцов и «Кварталы» с левой стороны:
Функция Транспонировать переупомешет таблицу, в которой столбцы «Кварталы» отображаются в заголовках столбцов, а слева будут показаны регионы продаж, например:
Примечание: Если данные хранятся в таблице Excel, функция Транспонирование будет недоступна. Можно сначала преобразовать таблицу в диапазон или воспользоваться функцией ТРАНСП, чтобы повернуть строки и столбцы.
Вот как это сделать:
-
Выделите диапазон данных, который требуется переупорядочить, включая заголовки строк или столбцов, а затем нажмите клавиши CTRL+C.
Примечание: Убедитесь, что для этого нужно скопировать данные, так как не получится использовать команду Вырезать или CTRL+X.
-
Выберите новое место на том месте на компьютере, куда вы хотите ввести транспонную таблицу, чтобы вместить данные в достаточном месте. В новой таблице будут полностью переоформатироваться все данные и форматирование, которые уже есть.
Щелкните правой кнопкой мыши левую верхнюю ячейку, в которой нужно ввести транспонировать таблицу, и выберите транспонировать .
-
После успешного поворота данных можно удалить исходную таблицу, и данные в новой таблице останутся без изменений.
Советы по транспонированию данных
-
Если данные содержат формулы, Excel автоматически обновляет их в соответствие с новым расположением. Убедитесь, что в этих формулах используются абсолютные ссылки. Если они не используются, перед поворотом данных можно переключаться между относительными, абсолютными и смешанными ссылками.
-
Если вы хотите часто поворачивать данные для их просмотра под разными углами, создайте с помощью нее с помощью перетаскиванием полей из области строк в область столбцов (или наоборот)в списке полей.
Вы можете ввести в книгу данные в качестве транспон данных. Транспонировать: переупочевание содержимого скопированные ячейки при копировании. Данные строк будут вставлены в столбцы, и наоборот.
Вот как можно транспоннять содержимое ячейки:
-
Скопируйте диапазон ячеев.
-
Вы выберите пустые ячейки, в которые вы хотите ввести транспонировать данные.
-
На вкладке Главная щелкните значок Ввести и выберите Ввести транспонировать.
Can you have a column of data moved to a single cell with commas separating the values that were in the column? Kind of reverse text to columns.
e.g.,
1
2
3
4
5
to 1,2,3,4,5
in a single cell.
asked Mar 23, 2012 at 22:03
1
Using a User Defined Function will much more flexible than hard-coding cell by cell
- Press alt & f11together to go to the VBE
- Insert Module
- copy and paste the code below
- Press alt & f11together to go back to Excel
use your new formula like the one in the D6 cell snapshot
=ConCat(A1:A5)
You can use more complex formulae such as the one in D7
=ConCat(A1:A5,A7:A24)
or D8 whihc is 2D
=concat(A1:B5,A7:A24)
Function ConCat(ParamArray rng1()) As String
Dim X
Dim strOut As String
Dim strDelim As String
Dim rng As Range
Dim lngRow As Long
Dim lngCol As Long
Dim lngCnt As Long
strDelim = ", "
For lngCnt = LBound(rng1) To UBound(rng1)
If TypeOf rng1(lngCnt) Is Range Then
If rng1(lngCnt).Cells.Count > 1 Then
X = rng1(lngCnt).Value2
For lngRow = 1 To UBound(X, 1)
For lngCol = 1 To UBound(X, 2)
strOut = strOut & (strDelim & X(lngRow, lngCol))
Next
Next
Else
strOut = strOut & (strDelim & rng2.Value)
End If
End If
Next
ConCat = Right$(strOut, Len(strOut) - Len(strDelim))
End Function
answered Mar 24, 2012 at 3:07
brettdjbrettdj
2,09720 silver badges23 bronze badges
-
First, do
=concatenate(A1,",")
in the next column next to the one you have values.
-
Second, copy the whole column and go to another sheet do Paste Special-> Transpose.
- Thirdly copy the value you just got, and open a word document, then choose Paste Options -> choose «A»,
- Last, copy everything in the word document back to a cell in an excel sheet,you would get all values in one cell
answered Sep 17, 2012 at 5:30
RonRon
511 silver badge2 bronze badges
You could use the concatenate function and alternate between cells and the string ","
:
=CONCATENATE(A1,",",A2,",",A3,",",A4,",",A5)
answered Mar 23, 2012 at 22:11
shuflershufler
1,7569 silver badges15 bronze badges
If it’s a looong column of values, you can use the CONCATENATE function, but to do it quickly is a little tricky. Assuming the cells were A1:A10, in B9 and B10 put these formulas:
B9: =A9&»,»&B10
B10: =A10
Now, copy B9 and paste in all the cells UP to the top of column B.
In B1 you will now have you full result. Copy > Paste Special > Values.
answered Mar 24, 2012 at 1:12
Amazing answer, karthikeyan. I didn’t want to waste time in VB either or even to escape from Ctrl+H. This would be most simplest, and I am doing this.
- Insert a new row on top (A).
- Just above number 1 (i.e. on A1), type an equals character (=).
- Copy/paste a comma (,) from B1 to B23 (not in B24).
- Select A1 to B24, copy/paste in Notepad.
- In Notepad press (Select All) Ctrl+A, press (Copy) Ctrl+C,
then click inside a single cell in Excel (F2), then (Paste) Ctrl+V.
karel
13.3k26 gold badges44 silver badges52 bronze badges
answered Jan 4, 2016 at 4:32
Notepad is the simplest and fastest.
From Excel, I added in a column for running numbers in column A. My data is in Column B.
Then copied column A & B to notepad.
Removed the extra spaces by using the replace function in notepad.
Copied from notepad and pasted back to excel in the single cell I wanted the data in. All done. No VB needed!
answered Jan 31, 2016 at 7:06
Its very simple with 2 steps. First put comma in each cell of the source column (using concatenate function) and then combine all row values into one cell (using CONCAT function).
-
First make a new column with concatenating with comma by putting below formula
=concatenate(A1,»,»)
Drag this new column formula until the last row, so that you will get all values with comma. -
In the cell where you want the final values, put below formula and you are done:
=CONCAT(B1:B28)
answered Nov 13, 2019 at 9:43
All above answers would do the trick but in my opinion, this would be the correct solution,
=TEXTJOIN(",",TRUE,A:A)
answered Sep 10, 2020 at 17:13
Best and Simple solution to follow:
Select the range of the columns you want to be copied to single column
Copy the range of cells (multiple columns)
Open Notepad++
Paste the selected range of cells
Press Ctrl+H, replace t by n and click on replace all
all the multiple columns fall under one single column
now copy the same and paste in excel
Simple and effective solution for those who dont want to waste time coding in VBA
answered Nov 9, 2015 at 10:22
1
The easiest way to combine list of values from a column into a single cell I have found to be using a simple concatenate formula.
1) Insert new column
2) Insert concatenate formula using the column you want to combine as the first value, a separator (space, comma, etc) as the second value, and the cell below the cell you placed the formula in as the third value.
3) Drag the formula down through the end of the data in the column of interest
4) Copy & paste special values in the newly created column to remove the formulas, and BOOM!…all values are now in the top cell.
For example, the following formula will combine all values listed in column A in cell C3 with a semi-colon separating them
=CONCATENATE(A3,»;»,C4)
answered Aug 21, 2018 at 18:33
1
1.Select all rows and copy
2.Paste special > Transpose
3.Select all new rows and copy
4.Paste to notepad(now we have single row in notepad separated by space)
5.Select all copy and paste to single excel cell
6.Replace space with comma in excel
answered Feb 11, 2022 at 11:42
First need to add comma after one for one cell (Like this 1,) then give Control + E for flash fill. After that just give concat formula,(=concat(A1:A5))
.
Giacomo1968
52.1k18 gold badges162 silver badges211 bronze badges
answered Sep 28, 2022 at 17:24
Here’s a quick way… Insert a column of «, » next to each value using fill. Place a CONCATE formula, anywhere, with both columns in the range, done. The result is a single cell, concatenated list with commas and a space after each.
answered May 26, 2017 at 22:20
2
Превращение строк в столбцы и обратно
Постановка задачи
Хотим, упрощенно говоря, повернуть таблицу на бок, т.е. то, что располагалось в строке — пустить по столбцу и наоборот:
Способ 1. Специальная вставка
Выделяем и копируем исходную таблицу (правой кнопкой мыши — Копировать). Затем щелкаем правой по пустой ячейке, куда хотим поместить повернутую таблицу и выбираем из контекстного меню команду Специальная вставка (Paste Special). В открывшемся диалоговом окне ставим галочку Транспонировать (Transpose) и жмем ОК.
Минусы: не всегда корректно копируются ячейки с формулами, нет связи между таблицами (изменение данных в первой таблице не повлияет на вторую).
Плюсы: в транспонированной таблице сохраняется исходное форматирование ячеек.
Способ 2. Функция ТРАНСП
Выделяем нужное количество пустых ячеек (т.е. если, например, исходная таблица была из 3 строк и 5 столбцов, то выделить обязательно нужно диапазон из 5 строк и 3 столбцов) и вводим в первую ячейку функцию ТРАНСП (TRANSPOSE) из категории Ссылки и массивы (Lookup and Reference):
После ввода функции необходимо нажать не Enter, а Ctrl+Shift+Enter, чтобы ввести ее сразу во все выделенные ячейки как формулу массива. Если раньше не сталкивались с формулами массивов, то советую почитать тут — это весьма экзотический, но очень мощный инструмент в Excel.
Плюсы: между таблицами сохраняется связь, т.е. изменения в первой таблице тут же отражаются во второй.
Минусы: не сохраняется форматирование, пустые ячейки из первой таблицы отображаются в виде нулей во второй, нельзя редактировать отдельные ячейки во второй таблице, поскольку формулу массива можно менять только целиком.
Способ 3. Формируем адрес сами
Этот способ отчасти похож не предыдущий, но позволяет свободно редактировать значения во второй таблице и вносить в нее любые правки при необходимости. Для создания ссылок на строки и столбцы нам понадобятся четыре функции из категории Ссылки и массивы:
- Функция АДРЕС(номер_строки; номер_столбца) — выдает адрес ячейки по номеру строки и столбца на листе, т.е. АДРЕС(2;3) выдаст, например, ссылку на ячейку C2.
- Функция ДВССЫЛ(ссылка_в_виде_текста) — преобразует текстовую строку, например, «F3» в настоящую ссылку на ячейку F3.
- Функции СТРОКА(ячейка) и СТОЛБЕЦ(ячейка) — выдают номер строки и столбца для заданной ячейки, например =СТРОКА(F1) выдаст 1, а =СТОЛБЕЦ(А3) выдаст 3.
Теперь соединяем эти функции, чтобы получить нужную нам ссылку, т.е. вводим в любую свободную ячейку вот такую формулу:
=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))
в английской версии Excel это будет =INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))
А затем копируем (протягиваем) формулу на соседние ячейки как обычно черным крестом. В итоге должно получиться примерно следующее:
Т.е. при копировании формулы вниз по столбцу, она выдает ссылку, которая уходит вправо по строке и наоборот. Чего и требовалось.
Плюсы: сохраняются связи между таблицами, можно легко вносить изменения во вторую таблицу.
Минусы: форматирование не сохраняется, но его можно легко воспроизвести Специальной вставкой (вставить только Формат с флажком Транспонировать
Преобразование столбца чисел в одну ячейку, с последующим разделением всех цифр.
Автор denis-obn, 25.11.2011, 16:59
« назад — далее »
Доброе время суток!
Решил оптимизировать свою работу с помощью Excel , но столкнулся с такой проблемой.
Хочу преобразовать кучу ячеек в одну, а так чтобы потом ячейки разделялись цифры (двоеточием, запятой и т.д.) в ячейке куда я помещу преобразованные данные.
как это сделать?
Спасибо за ответ!
з.ы. может вам покажется простым решением. но я не нашел из нее выход!
Цитата: denis-obn от 25.11.2011, 16:59
Решил оптимизировать свою работу с помощью Excel
Хочу преобразовать кучу ячеек в одну, а так чтобы потом ячейки разделялись цифры (двоеточием, запятой и т.д.) в ячейке куда я помещу преобразованные данные.
Это по вашему оптимизация? А как Вы с такими данными будете потом работать, Вы не подумали?
ЗЫ Есть функция =СЦЕПИТЬ().
я уже эти данные получаю на выходе, их необходимо потом в word перенести.
Эм….
Преобразую цифры.
Сцепить получиться ли?
ЦитироватьЭм….
Преобразую цифры.
Сцепить получиться ли?
Тогда есть еще функция ТЕКСТ.
СЦепить не подойдет потому что постоянно меняется количество строк (столбцов) посоветуйте что нибудь другое.
Решение нашел, единственное чуть длинней, чем хотел, но все равно приятней чем было раньше=)
Спасибо
Цитата: denis-obn от 25.11.2011, 18:13
Решение нашел, единственное чуть длинней, чем хотел, но все равно приятней чем было раньше=)
Спасибо
а не могли бы Вы поделиться своим решением . Целый день мучаюсь — пытаюсь найти что-либо покрасивее чем «сцепить»
Значит выход такой нашел.
excel
сначала преобразую столбик в строку(excel)копировать спомощью специальной вставки, потом копирую получившуюся строку в
WORD, жму — таблица-преобразовать-таблицу в текст (разделяю запятыми и все)
UDF:
Function JoinDiap(Arr, Optional del As String = " ") As String
Dim i As Long, x
For Each x In Arr
If x <> "" Then
JoinDiap = JoinDiap & IIf(i, del, "") & x
i = i + 1
End If
Next x
End Function
- Профессиональные приемы работы в Microsoft Excel
-
►
Обмен опытом -
►
Microsoft Excel -
►
Преобразование столбца чисел в одну ячейку, с последующим разделением всех цифр.
17.10.2013 Полезные советы
Когда возникает вопрос преобразования в excel столбца в строку, то имеется ввиду перемещение данных находящихся в столбце в строку. Или так называемое транспонирование. Весьма распространенная ситуация при перекладке данных из одного формата в другой.
Для того чтобы преобразовать в excel столбец в строку можно воспользоваться двумя способами:
Первый способ – использование специальной вставки.
Выделяем данные в столбце и копируем их. Затем правой кнопкой мыши вызываем контекстное меню, и выбираем пункт Специальная вставка. В появившемся диалоговом окне ставим галочку «транспонировать» и нажимаем ОК.
Данные из столбца в excel будут преобразованы (транспонированы) в строку.
Второй способ – использование функции ТРАНСП.
Функция ТРАНСП преобразует вертикальный диапазон ячеек (столбец) в горизонтальный (строку).
Функция ТРАНСП имеет очень простой синтаксис:
=ТРАНСП(массив), где массив – преобразуемый из столбца в строку массив данных.
Чтобы транспонировать данные в excel из столбца в строку, при помощи этой функции необходимо:
1) Выделить горизонтальный диапазон: внимание! – с количеством ячеек соответствующий количеству ячеек в вертикальном диапазоне.
2) В первую ячейку горизонтального диапазона ввести формулу =ТРАНСП(массив), где массив – это вертикальный диапазон ячеек.
3) Нажать комбинацию клавиш Ctrl + Shift + Enter. Формула будет введена как формула массива в фигурных скобках {=ТРАНСП(G5:G8)}
Какой способ выбрать при преобразовании в excel столбца в строку?
В первом случае, данные будут вставлены значениями, без связи с источником. Во втором случае, данные из столбца будут преобразованы в строку с сохранением связи с источником, и при изменении данных в столбце, будут меняться данные в строке.
Как в excel преобразовать строки в столбцы?
Как вы правильно догадались, чтобы преобразовать данные в excel из строки в столбец нужно проделать аналогичные операции, что и при преобразовании столбца в строку. Можно воспользоваться как специальной вставкой, так и функцией ТРАНСП.
Skip to content
В этой статье показано, как столбец можно превратить в строку в 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! На этом этапе ваша формула должна выглядеть примерно так:
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)))
Чтобы столбцы превратились в строки, копируем (протягиваем) формулу вправо и вниз, перетащив маленький черный крестик в нижнем правом углу выбранных ячеек. В итоге должно получиться примерно следующее:
Вот и все! В вашей вновь созданной таблице все столбцы поменяны местами со строками.
Если ваши данные начинаются с некоторой строки, отличной от 1, и столбца, отличного от A, вам придется использовать немного более сложную формулу:
=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(B6) — СТОЛБЕЦ($B$6) + СТРОКА($B$6); СТРОКА(B6) — СТРОКА($B$6) + СТОЛБЕЦ($B$6)))
Где B6 — самая верхняя левая ячейка исходной таблицы. Также обратите внимание на использование абсолютных и относительных ссылок.
Однако транспонированные данные выглядят очень просто и тускло по сравнению с исходными. Всё форматирование потеряно.
Но не расстраивайтесь, эту проблему легко решить. Чтобы восстановить исходное форматирование, выполните следующие действия:
- Скопируйте исходную таблицу.
- Выделите получившуюся таблицу.
- Щелкните её правой кнопкой мыши и выберите «Параметры вставки» > «Форматирование» .
Преимущества: эта формула обеспечивает более гибкий способ замены строк и столбцов в Excel. Это позволяет вносить любые изменения в итоговую таблицу, поскольку вы используете обычную формулу, а не формулу массива.
Недостатки: вижу только один — теряется форматирование данных. Хотя вы можете быстро восстановить его, как описано выше.
Способ 3. Специальная вставка
Предположим, у вас есть набор данных, аналогичный тому, что вы видите в верхней части рисунка ниже. Названия стран организованы в столбцы. Но их список слишком длинный, поэтому нам лучше перевернуть столбцы в строки, чтобы всё поместилось на экране:
Для этого выполните следующие действия:
- Выберите исходные данные. Чтобы быстро выделить всю таблицу, то есть все ячейки с данными в ней, нажмите
Ctrl + Home
, а потомCtrl + Shift + End
. Вы также можете транспонировать отдельную строку или столбец. - Скопируйте выделенное, щелкнув правой кнопкой мыши и выбрав пункт Копировать в контекстном меню, или нажав
Ctrl + C
. - Выберите первую позицию целевого диапазона.
Обязательно выберите клетку, расположенную вне вашей исходной таблицы, чтобы области копирования и области вставки не перекрывались. Например, если у вас сейчас 4 столбца и 10 строк, преобразованная таблица будет иметь 10 столбцов и 4 строки. - Щелкните правой кнопкой мыши целевую ячейку и выберите «Специальная вставка» в контекстном меню, затем выберите «Транспонировать».
Как вы только что видели, функция «Специальная вставка» позволяет выполнять преобразование из строки в столбец (или из столбца в строку) буквально за несколько секунд. Этот метод также копирует форматирование ваших исходных данных, чем добавляет еще один плюс в свою пользу.
Однако у этого подхода есть два недостатка, которые не позволяют называть его идеальным решением чтобы перевернуть данные в Excel:
- Он не слишком подходит для вращения полнофункциональных таблиц Excel. Если вы скопируете всю таблицу и затем откроете диалоговое окно «Специальная вставка», то обнаружите, что пункт «Транспонировать» неактивен. В этом случае вам нужно либо скопировать ее без заголовков столбцов, либо сначала преобразовать ее в обычный диапазон.
- Операция Специальная вставка > Транспонировать не связывает новую таблицу с исходными данными. Поэтому она хорошо подходит только для одноразовых преобразований. Всякий раз, когда исходные данные меняются, вам нужно будет повторить процесс и повернуть таблицу заново. Никто не захочет тратить свое время на преобразование одних и тех же строк и столбцов снова и снова, верно?
Как транспонировать таблицу и связать ее с исходными данными
Давайте посмотрим, как вы можете превращать строки в столбцы, используя уже знакомую нам технику специальной вставки, но при этом связывая полученную таблицу с исходным набором данных. То есть, всякий раз, когда вы меняете данные в исходной, перевернутая будет отражать изменения и обновляться соответствующим образом. Чуть выше мы назвали отсутствие такой связи недостатком. А сейчас посмотрим, как этот недостаток можно обойти.
- Скопируйте строки, которые нужно преобразовать в столбцы (или столбцы, которые нужно превратить в строки).
- Выберите пустую ячейку на том же или другом листе.
- Откройте диалоговое окно «Специальная вставка», как описано в предыдущем примере, и нажмите «Вставить связь» в нижнем левом углу.
- Результат будет примерно таким:
- Выберите новую таблицу и откройте диалоговое окно Excel «Найти и заменить» (или нажмите
Ctrl + H
, чтобы сразу перейти на вкладку Заменить). - Замените все знаки «=» на «###» или любые другие символы, которых нет нигде в ваших реальных данных. Таким нехитрым образом мы преобразуем наши формулы-ссылки в текст.
Эта операция превратит ваши данные во что-то немного пугающее, как вы видите на скриншоте ниже. Но не паникуйте – еще 2 шага, и вы достигнете желаемого результата.
- Скопируйте диапазон со значениями «###» в буфер обмена, а затем используйте Специальная вставка > Транспонировать, чтобы преобразовать столбцы в строки.
- Наконец, откройте диалоговое окно «Найти и заменить» еще раз, чтобы отменить изменение, т.е. обратно заменить все «###» на «=», и восстановить ссылки на исходные данные.
Это длинноватое, но элегантное решение, не правда ли? Единственным недостатком этого подхода является то, что исходное форматирование теряется в процессе, и вам нужно будет восстановить его вручную (в дальнейшем в этом руководстве я покажу вам быстрый способ сделать это).
Способ 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 элементов. Если ваш массив превышает этот предел, дополнительные данные будут автоматически отброшены.
Как использовать макрос для преобразования строки в столбец
Вставив макрос в книгу, выполните следующие шаги, чтобы повернуть таблицу:
- Откройте целевой рабочий лист, нажмите
Alt + F8
, выберите макрос TransposeColumnsRows и нажмите «Выполнить».
- Выберите диапазон, который вы хотите преобразовать, и нажмите OK :
- Выберите верхнюю левую позицию целевого диапазона и нажмите ОК:
Матрица значений транспонирована. Наслаждайтесь результатом
Способ 5. Сводная таблица.
Еще один способ как можно транспонировать таблицу в Excel — с помощью сводной таблицы. К сожалению, этот способ работает только в одном направлении — из столбцов переворачивает данные в строки. Но его преимущество, по сравнению с предыдущими, – это возможность фильтровать данные и использовать всю мощь сводных таблиц.
Сначала необходимо создать сводную таблицу (здесь есть подробная инструкция). Выделяем исходные данные:
Создаем её на новом листе.
В свойствах сводной таблицы отключаем общие и промежуточные итоги по столбцам и строкам.
Перетаскиваем поля в макете таблицы, и получаем результат – таблица повёрнута набок.
Преобразуйте столбцы в строки с помощью инструмента транспонирования
Если вам нужно выполнять преобразования строки в столбец достаточно часто, то возможно, вы действительно ищете более быстрый и простой способ. К счастью, у меня есть такой способ в моем Excel, как и у других пользователей надстройки Ultimate Suite
Позвольте мне продемонстрировать вам, как перенести строки в столбцы в Excel буквально за пару кликов при помощи инструмента транспонирования таблицы:
- Выделите любую отдельную ячейку в таблице, перейдите на вкладку AblebitsTools > Transform и нажмите кнопку Transpose.
- В большинстве случаев настройки по умолчанию работают нормально, поэтому вы просто нажимаете «Транспонировать», ничего не меняя.
Если вы хотите Создать ссылки на исходные данные, чтобы повернутая таблица обновлялась автоматически при каждом изменении исходной таблицы, выберите соответствующий вариант:
Готово! Таблица транспонирована:
Если вам интересно попробовать этот и более 60 других профессиональных инструментов для Excel, я приглашаю вас загрузить пробную версию Ultimate Suite.
Итак, вы можете выбрать для себя любой из этих шести методов транспонирования таблицы в Excel.
Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге!
Решение одним словом: транспонирование (transpose). Дальше ищущий может гуглить и найти данную статью.
Есть обычная таблица, как можно перенести все данные, чтобы столбцы стали строками, а строки – столбцами? Мне известно три способа решить задачу, каждый из которых по своему удобен.
- Специальная вставка
Выделяем один столбец или строку, копируем. В новом месте или листе, где будет располагаться транспонированная таблица, кликаем правой кнопкой «Специальная вставка».
Ставим галочку транспонировать. При использовании такого транспонирования «слетают» все формулы, все связи между таблицами. Поэтому, скорее всего нам также понадобится перенести только значения (или значения и форматы) чисел.
Из спорных преимуществ: сохранится все оформление ячеек, что требуется не всегда. Но главный недостаток способа – довольно трудоемкий процесс. Если строк и столбцов больше 100? Сто раз переносить данные построчно?
- Используем формулу
Гораздо более изящное решение.
Функция АДРЕС(номер_строки; номер_столбца) отдает ссылку (адрес) ячейки по 2 числам, где первое — номер строки, второе — номер столбца. Т.е. запись =АДРЕС(1;1) вернет нам ссылку на ячейку А1.
С помощью функций СТРОКА(ячейка) и СТОЛБЕЦ(ячейка) меняем порядок выдачи у функции АДРЕС — не (строка, столбец), а (столбец, строка).
В текущем виде формула =АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)) вернет текст $A$1, надо преобразовать результат в ссылку, обернув все выражение в функцию ДВССЫЛ(ссылка_в_виде_текста).
Решение:
=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))
В английском Excel:
=INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))
Применив формулу для ячейки А9 (в примере на картинке), растягиваем ее на остальные. Результат:
И сразу можно увидеть 2 небольших минуса этого способа:
- Пустые ячейки заполняются нулями, правим вручную;
- Формат ячеек – числовой, так Даты тоже нужно будет преобразовывать вручную.
Но все-таки на больших таблицах эта формула однозначно быстрее, чем специальная вставка.
- Сводная таблица
Даже формула – не совсем то, что надо. Мы преобразовываем данные туда-сюда, хотя нам всего-то требуется поработать с самой таблицей.
Самое рациональное решение – сводная таблица. Нам понадобиться поправить исходные данные, у каждого столбца должен быть заголовок!
Выделяем таблицу, выбираем в меню Вставка – Сводная таблица. Указываем, куда вставить новую таблицу (можно на новый лист или куда-нибудь на текущий), график – да/нет. Ок. В настройках меняем местами блоки названия строк и названия столбцов. Результат:
Транспонирование в Excel – преобразуем строки в столбцы и наоборот
Смотрите такжеТак как он СТОЛБЕЦ($N$1)? мне не подходит — там надо(Транспонировать). скрипт, который будетA Вы можете пропустить.Вот и всё! В данные в транспонированной
Обязательно нажмите частности с функциямиххх создаёт копию исходных(наконец, самый быстрый способ) кнопкой мыши иТранспонирование данных в Excel ограничен числом столбцовvikttur лист будет меняться поставить галочку «транспонировать».Если в появившемся меню транспонировать строки в– это первыйФункция Вашей новой таблице
- таблице, при этомCtrl+Shift+Enter массива, то, пожалуйста,
- «. На самом деле данных, и, если Нажмите выберите
- – это задача,256
Преобразуем строки в столбцы в Excel при помощи Специальной вставки
: по месяцам приАлександра белкина Вы не нашли столбцы, при условии, столбец. Как неINDIRECT все столбцы преобразованы сохраняя связь с, поскольку это формула внимательно следите за Вы можете заменить они изменятся, ВамCtrl+Alt+VCopy
- знакомая многим пользователям., то ни транспонированием,200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС($B$6:$B$16;СЧЁТ($B$6:$B$16)-СТОЛБЕЦ(A1)+1) переходе в форму!: Чтобы всю таблицу иконку команды что Вы достаточно трудно догадаться, функция(ДВССЫЛ) служит для в строки. Однако, исходной таблицей. массива. Если для
- тем, чтобы выполнять их на любые
- придётся повторять процесс, выберите опцию(Копировать) в контекстном Очень часто после ни формулами запихнутьЕсли очень надо,
- а вот второй преобразовать, т. е.Transpose
- хорошо владеете VBA.ROW создания непрямой ссылки транспонированные ячейки выглядятВ этом примере мы ввода формулы просто следующие шаги в другие символы, которых
- и транспонировать таблицуTranspose меню. создания сложной таблицы,
»…строк более 500…» про ответ сейчас посмотрю! столбцы сделать строками,(Транспонировать), то можете Если нет, то(СТРОКА) работает точно на ячейку. Например, очень плоско и будем использовать небольшую нажать точности как написано. нет в рассматриваемом снова. Никто не(Транспонировать) и кликните
- нажмите становится очевидным, чтов 256 столбцовСТОЛБЕЦ()excelhelprus а строки столбцами, использовать команду можете найти множество так же, только если Вы хотите
- скучно по сравнению таблицу, чтобы ВыEnterВ этом примере мы диапазоне. захочет тратить своёОКCtrl+C эффективнее было бы не получится…почитайте в справке.: Это 1 и
- надо выделить ее,Paste Special готовых макросов в для строк. поместить значение ячейки с исходными данными. могли сосредоточить свое, то она работать будем преобразовывать таблицу,
- Это превратит Вашу таблицу драгоценное время на.. развернуть её дляjavvvaRustem тот же способ)
скопировать в буфер(Специальная вставка). интернете. Но еслиА теперь позвольте напомнитьB1Но не расстраивайтесь, это внимание на процессе не будет. в которой перечислены в нечто слегка то, чтобы преобразовыватьЗамечание:
нажмите кнопку более удобного анализа: а по мне: Про N1=14 просто код - обмена (проще правойВ этом случае откроется Вы работаете с всю формулу, которуюв ячейку вовсе не проблема. транспонирования, а неГотово! Наши данные транспонированы, штаты США с пугающее (смотри рисунок одни и теЕсли Вы транспонируетеCo
или построения диаграммы так для тогоSerge_007 это отображение функции кнопкой мыши на диалоговое окно
- большими таблицами, помните, мы использовали дляA8 Вот как можно на данных в 7 столбцов превратились данными о населении: ниже), но не же строки и ячейки, содержащие формулы,py по имеющимся данным. чтобы сделать диаграмму: Извиняюсь, не тот траспонирования в макросе. выделенной таблице щелкнутьPaste Special что метод преобразования строк в
- , то записываете в легко восстановить исходное таблице. Мы будем в 6 столбцов,Во-первых, необходимо определить точное тревожьтесь, осталось всего столбцы по нескольку убедитесь, что во(Копировать) на вкладкеВ этой статье Вы не обязательно переделывать файл выложил Почему не подходит и выбрать Копировать).(Специальная вставка). ОтметьтеTranspose
Как транспонировать таблицу, ссылающуюся на исходные данные
столбцы на листе ячейку форматирование: использовать немного замысловатую что и требовалось количество строк и 2 действия, и раз. Согласны? всех этих ячейкахHome найдёте несколько способов всю таблицу. хотяПравильный здесь — совсем не Таблица выделится пунктирной необходимые параметры, ав VBA ограничен Excel:
- A8Скопируйте исходную таблицу. комбинацию функций получить. столбцов в таблице.
- Вы получите желаемыйДавайте посмотрим, как можно использованы абсолютные ссылки
- (Главная) в разделе преобразовать строки в я могу ошибатьсяbalda понятно мигающей границей. Потом главное – не 65536 элементами. Если=INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))следующую формулу:Выделите транспонированную таблицу.
- INDIRECTГлавное преимущество функции В нашем примере результат. преобразовать строки в (со знаком $).Clipboard столбцы (или столбцы (не так часто: Друзья! Всем огромноеexcelhelprus выделяете ячейку, в
- забудьте поставить галочку Ваш массив выйдет=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))=INDIRECT(«B1»)Кликните по выделенной области(ДВССЫЛ) иTRANSPOSE это 7 столбцовСкопируйте таблицу с символами столбцы в Excel Это необходимо, поскольку(Буфер обмена). в строки) в приходилось делать диаграммы). спасибо за быстрые: которую хотите вставить напротив опции за рамки этого
- Как видите, в функции=ДВССЫЛ(«B1») правой кнопкой мышиADDRESS(ТРАНСП): преобразованная таблица и 6 строк, « при помощи уже формулы также будутВыделите первую ячейку диапазона, Excel. Эти решения
- Фиалочка ответы!! Получилось!!!200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub В_Столбец_2() преобразованную таблицу, правойTranspose ограничения, то всеADDRESSНо реальная сила функции и в разделе(АДРЕС). сохраняет связь с
включая заголовки. Запомнимххх знакомой нам техники транспонированы, а ссылки в который Вы работают во всех: Спасибо большое каждому,ФиалочкаSheets(«Лист1»).Range(«A1:AE5»).Copy кнопкой щелкаете по(Транспонировать). лишние данные будут(АДРЕС) мы задаём
Транспонируем данные в Excel при помощи формул
INDIRECTPaste OptionsПредположим, у Вас есть источником данных, т.е. эти цифры и» и выполните команду
Преобразуем в Excel строки в столбцы при помощи функции TRANSPOSE (ТРАНСП)
Копировать на ячейки автоматически собираетесь скопировать транспонированные версиях Excel (2013, кто ответил. Ваши: Здравствуйте.Sheets(«Лист2»).Range(«A1»).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, ней, выбираете колмандуПодсказка: молча потеряны. сначала столбец, а(ДВССЫЛ) в том,(Параметры вставки) выберите данные в 4 какие бы изменения приступим к преобразованию
Paste Special> обновлены. данные. 2010, 2007 и
советы и ужПодскажите, пожалуйста, мне, SkipBlanks:= _ Специальная вставка, вЕсли Вы копируетеУрок подготовлен для Вас затем строку, и что она можетFormatting столбцах (
- в исходных данных строк в столбцы.(Специальная вставка) >ВставитьКак Вы только что
- Замечание: более ранних), охватывают тем более таблица компьютерному чайнику, элементарнуюFalse, Transpose:=True появившемся диалоговом окне ячейки с относительными командой сайта office-guru.ru в этом кроется превратить любую текстовую(Форматирование).A Вы ни вносили,Посчитайте ячейки, которые ВыTranspose
- , так, чтобы транспонированные увидели, опцияВажно выбрать ячейку, множество возможных сценариев,
- оччень помогли. (для вас, знатоков)End Sub установите флажок Транспонировать, ссылками без ячеек,Источник: https://www.ablebits.com/office-addins-blog/2014/03/06/transpose-excel-rows-columns/ весь фокус! Помните, строку в ссылку,Подводя итог, метод с
–
транспонированная таблица также
хотите транспонировать. В(Транспонировать), чтобы преобразовать данные ссылались наTranspose которая находится за объясняют наиболее типичные
- P. S. Честно, вещь: как сделатьexcelhelprus
затем ОК или на которые идутПеревел: Антон Андронов что функция в том числе функциейD будет изменяться. нашем случае это столбцы в строки
исходные данные. Главное(Транспонировать) в Excel пределами диапазона исходных ошибки и показывают очень боялась, что
Преимущества функции TRANSPOSE (ТРАНСП)
так, чтобы данные,: это конкретно для Enter на клавиатуре. ссылки, то ссылкиАвтор: Антон АндроновADDRESS строку, которую ВыINDIRECT) и в 5Форматирование начальной таблицы не
Недостатки функции TRANSPOSE (ТРАНСП)
- 7 столбцов и (или строки в преимущество такого подхода позволяет преобразовать строки данных, чтобы скопированная
- хорошие примеры использования засмеют за такие записанные в 4 вашего файла -Удачи!
- станут ошибочными. ЧтобыМногие поклонники Excel рано(АДРЕС) понимает первое создаёте при помощи(ДВССЫЛ) кажется более строках ( сохранится в преобразованной 6 строк. столбцы). в том, что в столбцы (или область и область в Excel формул глупые вопросы, а,
столбцах, стали данным, вставляет ваш календарикCkaym избежать этого, копируйте или поздно сталкиваются число как номер других функций и сложным решением задачи1 таблице, как это
Преобразовываем строку в столбец или столбец в строку при помощи функции INDIRECT (ДВССЫЛ)
Выберите пустой диапазон ячеек.Снова откройте диалоговое окно при изменении данных столбцы в строки) вставки не пересеклись. для транспонирования. оказывается, народ здесь записанными в 4 на лист 2: Всем доброго времени и вставляйте только с этой задачей.
строки, а второе значений других ячеек. по преобразованию строк– видно на рисунке Так как функцияFind and Replace в исходной таблице, буквально за несколько Например, если исходныеПреобразовываем строки в столбцы вот какой терпимый строки (что необходимо начиная с ячейки
суток. значения, когда выполняете Данные на листе число как номер Именно это мы в столбцы, чем5 выше.TRANSPOSE(Найти и заменить), транспонированная таблица обновится секунд. Уверен, что
- данные состоят из методом Копировать > и помогающий. мне для построения А1Как преобразовать несколько преобразование строк в могут быть выстроены столбца. Другими словами,
и собираемся сейчас
с функцией
):Если какие-то ячейки начальной(ТРАНСП) меняет вертикальное чтобы заменить все и отразит эти этот способ очень 4 столбцов и ВставитьRuMaSs
диаграммы). Данных более
Ckaym
строк с Листа1 столбцы или наоборот. вертикально или горизонтально, функция сделать. Если ВыTRANSPOSEВведите формулу, показанную ниже,
- таблицы были пусты, на горизонтальное измерение символы « изменения. полезен, когда требуется 10 строк, тоТранспонируем таблицу при помощи:
500 в каждом: Да все спасибо в столбец на Для этого отметьте но временами ВыADDRESS поймёте это, то(ТРАНСП).
в верхнюю левую то в транспонированных диапазона, значит нужнохххСкопируйте строки, которые Вы
- транспонировать таблицу один
- транспонированная таблица будет
- копирования / вставкиSerge 007 столбце, так что получилось Лист2. опцию будете замечать, что
(АДРЕС) берёт номер всё остальное поймётеПреимущества: ячейку конечного диапазона ячейках там будут выбрать такое количество» на « хотите преобразовать в раз. Пользуясь этим состоять из 10
ссылок на исходные? спасибо. помогла вручную переписывать долго.200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub В_Столбец()200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub В_Столбец()Values та или иная столбца, возвращённый функцией с лёгкостьюВы можете спокойно (допустим, это будет нули.
строк и столбцов,= столбцы (или столбцы, методом, Вы сохраняете столбцов и 4 данные информация.P. S. Пользуюсьm_ = Format(Date,
For h =(Значения) в разделе таблица выглядела быCOLUMNДумаю, Вы помните, что редактировать любую ячейку ячейкаВы не сможете редактировать сколько столбцов и«, т.е. восстановить ссылки которые хотите преобразовать исходные данные, и строк.Транспонируем данные в ExcelАндрей
Функции INDIRECT (ДВССЫЛ) и ADDRESS (АДРЕС) – синтаксис и логика
экселем в Office «M») 1 To 31Paste лучше, если столбцы(СТОЛБЕЦ), и превращает в формуле мы (ячейки) в транспонированнойA7 ячейки в преобразованной строк соответственно имеет на исходные ячейки. в строки). это ещё один
Вставьте скопированные данные при
при помощи формул
: Как вариант: как 2003, такSheets(«Табель»).Range(«A1:AE5»).Copy ‘(Вставить) диалогового окна и строки поменять его в номер использовали ещё 3 таблице, при этом), и нажмите таблице, поскольку функция Ваша исходная таблица. Готово!Выберите пустую ячейку на аргумент в его помощи командыПредположим, Вы создали таблицу
перегоняешь столбец в и 2007 (вдругSheets(m_ + 2).Range(«A1»).PasteSpecialCells(h, 33) =Paste Special местами. строки, затем берёт функции – она будет оставатьсяEnter
TRANSPOSE В нашем примереБыстрое, спокойное и элегантное этом же или пользу.Paste Special на листе Excel, строку (где сия в каком-либо пакете Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= Cells(1, h)(Специальная вставка).Представляем Вашему вниманию приём,
номер строки иADDRESS связанной с таблицей-источником:(ТРАНСП) чрезвычайно зависима мы выбираем 6 решение, не так другом листе.Однако, вышеописанный метод имеет(Специальная вставка) > похожую на ту, кнопка — не нужной функции нет). _Cells(h, 34) =Ваши данные будут точно при помощи которого превращает его в
(АДРЕС), и будет автоматически=INDIRECT(ADDRESS(COLUMN(A1),ROW(A1))) от источника данных. столбцов и 7 ли? Единственный недостаток
Откройте диалоговое окно
два существенных недостатка,
Transpose что показана в помню, но точноЗаранее спасибо всем,False, Transpose:=True Cells(2, h) и легко транспонированы Вы можете изменить номер столбца, тоCOLUMN обновляться каждый раз,=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1))) Если Вы сделаете строк. этого подхода состоитPaste Special которые не позволяют(Транспонировать). Вы можете верхней части рисунка, она была. сам кто поможет советом.End SubCells(h, 35) = и выстроены в компоновку данных в есть меняет местами(СТОЛБЕЦ) и
когда Вы будетеЕсли данные начинаются не попытку изменить какую-либоНажмите в том, что
- (Специальная вставка), как считать его идеальным открыть диалоговое окно расположенного ниже. Названия пользовался) , потомVlanibВопрос закрыт
- Cells(3, h) новом порядке. В Excel в соответствии строки и столбцы.
- ROW вносить изменения в в строке с ячейку, то получитеF2 в процессе выполнения
было показано в
Транспонируем данные при помощи макроса VBA
решением для транспонированияPaste Special стран распределены по сохраняешь как текст: Выделяете диапазон сbaldaCells(h, 36) = обратном направлении этот с Вашими потребностями.Теперь, когда Вы знаете,(СТРОКА). исходные данные. номером сообщение с предупреждением:, чтобы перейти в форматирование исходной таблицы предыдущем примере, и данных в Excel.(Специальная вставка) тремя столбцам, но список с разделителем запятая
данными, Ctrl+C, выделить: Друзья! Помогите прообразовать
Cells(4, h)
приём работает так
Давайте вместе проделаем
office-guru.ru
Преобразуем строки в столбцы и обратно в Microsoft Excel
что делает каждаяФункцияНедостатки:1You cannot change part режим редактирования. будет потеряно, и нажмитеДанный инструмент не доступен способами: стран может оказаться :) ячейку куда записать
столбец в строкуCells(h, 37) = же хорошо. следующие шаги и функция, давайте сведёмADDRESSНа самом деле,и не в of an arrayЗапишите функцию Вам придётся восстанавливать
Весь секрет в специальной вставке
- Paste Link при копировании /На вкладке очень длинным, поэтомуперегнать столбец в измененные данные, правой (только при помощи Cells(5, h)Надеюсь, этот способ будет
- расположим данные в воедино логику всей(АДРЕС) используется для я вижу только столбце(Нельзя изменять частьTRANSP его вручную (далее(Вставить связь) в вставке полнофункциональной таблицы
- Home нам будет гораздо строку и наоборот: клавишей меню - функций) в обратномNext h полезен. Хорошего Вам таблице в виде
- формулы: того, чтобы получить один – форматированиеA массива).OSE в этом уроке нижнем левом углу Excel в отличие(Главная) в разделе
удобнее преобразовать столбцы Копировать столбец, контекстное специальная вставка - порядке!End Sub дня! двух горизонтальных строк.функции адрес ячейки из исходных данных не, то потребуется немногоИ в завершение, какой(ТРАНСП) и укажите я покажу быстрый диалогового окна. от простого диапазона.Clipboard в строки, чтобы меню — «Специальная опция транспонировать внизу.
Наслаждайтесь результатом
Как на прикреплённомexcelhelprusУрок подготовлен для ВасПервым делом, выделите таблицуCOLUMN номеров строки и сохраняется. Впрочем, Вы
более сложная формула: бы хорошей и в скобках диапазон
способ сделать это).Результат будет примерно таким:
В этом случае
(Буфер обмена), нажмите
таблица уместилась на
office-guru.ru
Как в экселе данные столбца перенести в строку
вставка», ставим галкуSerge 007 файле!: В Excel есть командой сайта office-guru.ru с данными, которые
(СТОЛБЕЦ) и столбца, заданных Вами. можете легко восстановить=INDIRECT(ADDRESS(COLUMN(A1)-COLUMN($A$1)+ROW($A$1),ROW(A1)-ROW($A$1)+COLUMN($A$1))) простой ни была данных, который нужноЕсли Вы не ищитеВыделите новые данные и Вам придётся скопировать
маленькую чёрную стрелку экране. «Транспонировать», ок. Это: Здравствуйте.Спасибо!!! Очень надо!!! опция при вставке.Источник: https://www.ablebits.com/office-addins-blog/2012/04/10/convert-rows-columns-excel/ Вам нужно повернуть.ROW Запомните: сначала строка, его, как это=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1)-СТОЛБЕЦ($A$1)+СТРОКА($A$1);СТРОКА(A1)-СТРОКА($A$1)+СТОЛБЕЦ($A$1))) функция транспонировать. В нашем лёгких путей, то откройте диалоговое окно таблицу без заголовков, под кнопкойВыделите строки и столбцы, для 2007.ФиалочкаEXcel 2007 Называется транспонировать. Если
Перевел: Антон Андронов
Как преобразовать строку в столбец на другом листе (Макросы/Sub)
Кликните правой кнопкой(СТРОКА) возвращают номера потом столбец. Например,
показано выше.ГдеTRANSPOSE случае это будет
можете использовать формулы
Excel – либо преобразовать еёPaste
которые требуется поменятьВариант №2. Сохраняешь
, можно воспользоваться способомSerge_007
нужно в макросеАвтор: Антон Андронов
мыши и в столбца и строки
АДРЕС(8;1)Теперь Вы понимаете, как
A1
(ТРАНСП), ей не
выглядеть так: для преобразования столбцовFind and Replace в диапазон, т.е.(Вставить) и выберите местами. Если Вы как текст, а предложенным: См. вложение — используйте ее
Ирина появившемся контекстном меню соответственно;
возвратит работает функция
– это левая
хватает гибкости, и=TRANSPOSE($A$1:$G$6) в строки и(Найти и заменить). кликнуть правой кнопкой команду
хотите развернуть всю потом по текстовому
Vlanibbalda с макрорекордером. Будет: выделить, скопировать, встать нажмите командуфункция$A$8INDIRECT верхняя ячейка таблицы-источника.
поэтому она становится=ТРАНСП($A$1:$G$6) наоборот.
Вы также можете
мыши по любойTranspose
таблицу целиком, т.е.
файлу автозаменой перенос
, или, если нет: большое спасибо за явно быстрее и на строку, правойCopyADDRESS.
(ДВССЫЛ), и, возможно, Также обратите внимание не лучшим решением
Замечание:
Как можно понять из нажать сочетание
ячейке таблицы и
(Транспонировать). все ячейки с строки и ";"
желания каждый раз
быстрый ответ! Но
удобнее чем в
excelworld.ru
преобразовать столбец в строку при помощи функций в об. пор.
кнопкой мыши -(Копировать).(АДРЕС) меняет местамиФункция захотите более подробно на использование абсолютных
во многих ситуациях.Всегда используйте абсолютные
её названия, функция
Ctrl+H
в контекстном менюКликните правой кнопкой мыши
данными на листе, меняешь на «,» вручную копировать исходный мне нужно в вашем коде)
специальная вставка -Далее выберите позицию, где
строку и столбец;COLUMN разобраться, что на и относительных ссылок.Этот метод очень похож ссылки для работы
TRANSPOSE, чтобы сразу попасть выбрать
по ячейке, в нажмите :) диапазон и жать
обратном порядкеexcelhelprus
транспортировать должна располагаться новаяфункция
(СТОЛБЕЦ) возвращает номер
самом деле делаетСкопируйте формулу на весь на предыдущий. Его с функцией
excelworld.ru
Данные из столбцов в строки.
(ТРАНСП) специально разработана на вкладку
Table которую нужно вставитьCtrl+HomeЗЫ. Пункты меню кнопки, то можноRustem:Татьяна таблица. Кликните правойINDIRECT столбца из заданной эта формула и диапазон, в который главное преимущество перед
TRANSPOSE для транспонирования данныхReplace(Таблица) > данные, и в, а затем
— вольный перевод, воспользоваться формулами (см.
: Так?200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sheets(«Лист1»).Range(«E2:E4»).Copy: данные столбца выделить, кнопкой мыши по(ДВССЫЛ) выводит перевернутые ссылки на ячейку. почему мы использовали Вы собираетесь поместить
функцией(ТРАНСП).
в Excel. Если(Заменить).Convert to Range контекстном меню выберитеCtrl+Shift+End так как офис вложение).baldaSheets(«Лист2»).Range(«H8»).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, скопировать, поставить курсор левой верхней ячейке
данные в другую Например, комбинацию с функцией транспонированные данные, протянув
TRANSPOSEНажмите у Вас нетЗамените все символы равно(Преобразовать в диапазон).Paste Special. аглицкий, а ответ
А вот тут: Вроде так. Но SkipBlanks:= _ к началу строки, этой области и ячейку на листеСТОЛБЕЦ(A3)ADDRESS за маркер автозаполнения
(ТРАНСП) состоит вCtrl+Shift+Enter большого опыта работы «Более серьёзное ограничение этого(Специальная вставка) >
Скопируйте выделенные ячейки. Для с аглицкими буквами у Вас возникнет я не понялFalse, Transpose:=True правой кнопкой мышки в появившемся меню
Excel.возвратит значение(АДРЕС). Если технические в правом нижнем том, что он
CyberForum.ru
Как в экселе текстовые данные из нескольких ячеек одного столбца преобразовать в одну строку, с разделителем — запятой?
. с формулами в
= метода состоит вTranspose этого на выбор: у меня не сложность с 2003 (извиняюсь за невежество)Ckaym вызвать контекстное меню
выберите командуСовсем не страшно, правда?1 детали Вас не углу выделенной ячейки оставляет возможность изменятьЗамечание:
Excel, и в» на « том, что он(Транспонировать).кликните по ним правой принимался :( Excel.
про чём здесь: Спасибо такой вариант — специальная вставкаTransposeНе составит труда написать, поскольку столбец интересуют, следующий раздел
(или диапазона ячеек).