Преобразовать столбец в одну ячейку 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.

Scott - Слава Україні's user avatar

asked Mar 23, 2012 at 22:03

John's user avatar

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)

sample

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

brettdj's user avatar

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

Sathyajith Bhat's user avatar

answered Sep 17, 2012 at 5:30

Ron's user avatar

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

shufler's user avatar

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

Jerry Beaucaire's user avatar

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.

  1. Insert a new row on top (A).
  2. Just above number 1 (i.e. on A1), type an equals character (=).
  3. Copy/paste a comma (,) from B1 to B23 (not in B24).
  4. Select A1 to B24, copy/paste in Notepad.
  5. 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's user avatar

karel

13.3k26 gold badges44 silver badges52 bronze badges

answered Jan 4, 2016 at 4:32

ananthnarain's user avatar

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

Kumar-Singapore's user avatar

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).

  1. 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.

  2. 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

user1112127's user avatar

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

Abhishek Baranwal's user avatar

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

Iam_Karthikeyan's user avatar

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

user936142's user avatar

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

Saaransh Garg's user avatar

answered Feb 11, 2022 at 11:42

Mohammed Aslam's user avatar

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)).

Screenshot.

Giacomo1968's user avatar

Giacomo1968

52.1k18 gold badges162 silver badges211 bronze badges

answered Sep 28, 2022 at 17:24

Sudarshan's user avatar

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

James's user avatar

2

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

Автор 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

  • Преобразование столбца чисел в одну ячейку, с последующим разделением всех цифр.

#Руководства

  • 29 апр 2022

  • 0

Инструкции со скриншотами и нюансами. Учим использовать кнопку «Объединить» и функции СЦЕПИТЬ, СЦЕП, ОБЪЕДИНИТЬ. Рассказываем, какой метод выбрать.

Иллюстрация: Meery Mary для Skillbox Media

Ксеня Шестак

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

Объединение ячеек в Excel позволяет из нескольких ячеек таблицы сделать одну. Такая опция обычно требуется в двух случаях:

  • если нужно отформатировать таблицу — например, расположить название таблицы по центру, убрать лишние пустые ячейки или оформить шапку;
  • если нужно объединить информацию — из нескольких строк или столбцов сделать одну ячейку, при этом сохранив все данные.

Рассмотрим четыре способа объединения ячеек в Excel. Разберёмся, для каких случаев они подойдут и как их применять. В конце расскажем, какие из этих способов работают в «Google Таблицах».

  • Кнопка «Объединить» — когда нужно сделать шапку в таблице.
  • Функция СЦЕПИТЬ — когда нужно собрать данные из нескольких ячеек в одну.
  • Функция СЦЕП — когда нужно собрать данные из большого диапазона.
  • Функция ОБЪЕДИНИТЬ — когда нужно собрать данные из большого диапазона и автоматически разделить их пробелами.

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

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

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

Первоначальный вид таблицы каталога автомобилей
Скриншот: Skillbox

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

Выделяем ячейки, которые нужно объединить
Скриншот: Skillbox

На вкладке «Главная» нажимаем на кнопку «Объединить ячейки» или «Объединить и поместить в центре» — в зависимости от того, какой визуальный результат хотим получить.

Нажимаем кнопку «Объединить и поместить в центре»
Скриншот: Skillbox

В итоге вместо пяти ячеек получаем одну. Вводим её название и меняем оформление, если нужно.

В нашем случае получилась шапка части таблицы — «Характеристики автомобилей».

Так выглядит ячейка после объединения и смены оформления
Скриншот: Skillbox

По аналогии с предыдущими шагами уберём лишнюю пустую ячейку над ячейкой «Марка, модель». Для этого нужно выделить их одновременно и также нажать на кнопку «Объединить и поместить в центре».

Выделяем ячейки, которые хотим объединить, и нажимаем кнопку
Скриншот: Skillbox

Получаем таблицу в таком виде:

Так выглядит таблица после форматирования с помощью кнопки “Объединить ячейки”
Скриншот: Skillbox

Чтобы убрать объединение ячеек, выделим их и нажмём на кнопку «Отмена объединения ячеек». Можно выбирать всю таблицу целиком — тогда Excel сам найдёт объединённые ячейки и разъединит их. Можно выделить отдельный диапазон — в этом случае разъединится только он. Мы выделим и разъединим всю шапку таблицы.

Убираем объединение всех ячеек
Скриншот: Skillbox

Получим таблицу в таком виде. Можно внести необходимые изменения, если нужно, и объединить ячейки снова.

Так выглядит таблица после отмены объединения
Скриншот: Skillbox

Дополнительно в этом методе есть кнопка «Объединить по строкам». С помощью неё можно объединить ячейки выбранного диапазона построчно. Например, есть диапазон из трёх столбцов и семи строк — нужно из всех этих столбцов сделать один, но при этом оставить количество строк неизменным. Выделим всю таблицу целиком и нажмём эту кнопку.

Нажимаем кнопку «Объединить по строкам»
Скриншот: Skillbox

Получим таблицу в таком виде — три столбца объединились в один, при этом количество строк осталось прежним.

Итог объединения по строкам
Скриншот: Skillbox

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

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

Для чего подойдёт. Для объединения небольшого количества ячеек с сохранением всех данных.

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

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

Как сделать. Для начала выделим ячейку, в которую функция соберёт значения из объединяемых ячеек. В нашем случае создадим дополнительную колонку «Данные для квитанции» и выделим первую ячейку.

Выделяем ячейку, куда функция принесёт объединённые данные
Скриншот: Skillbox

Дальше открываем окно для построения функции. Есть два способа сделать это. Первый — перейти во вкладку «Формулы» и нажать на «Вставить функцию».

Нажимаем сюда, чтобы открыть окно построения
Скриншот: Skillbox

Второй способ — нажать на «fx» в строке ссылок на любой вкладке таблицы.

Чтобы открыть окно построения, понадобится один клик
Скриншот: Skillbox

Справа появляется окно «Построитель формул». В нём через поисковик находим функцию СЦЕПИТЬ и нажимаем «Вставить функцию».

Нажимаем сюда, чтобы открылась функция СЦЕПИТЬ
Скриншот: Skillbox

Появляется окно для ввода аргументов функции. «Текст 1», «Текст 2» — ячейки, значения которых мы объединяем. В нашем случае таких ячеек пять, поэтому с помощью кнопки + добавляем ещё три таких аргумента.

Так выглядит окно для ввода аргументов функции СЦЕПИТЬ
Скриншот: Skillbox

Заполняем аргументы функции. Поочерёдно нажимаем на окно каждого аргумента и из таблицы выбираем значение для него.

Порядок действий, чтобы указать значение, выглядит так:

  • Ставим курсор в окно «Текст1» в построителе формул.
  • Выбираем первое значение столбца «Год выпуска» в таблице. Это ячейка B4.

Выбранное значение переносится в построитель формул и одновременно появляется в формуле строки ссылок: fx=СЦЕПИТЬ(B4).

То же самое делаем для остальных аргументов: «Текст2» → значение ячейки «Объем», «Текст3» → значение ячейки «Коробка передач», «Текст4» → значение ячейки «Привод», «Текст5» → значение ячейки “Руль”.

В итоговом виде функция получается такой: fx=СЦЕПИТЬ(B4; C4; D4; E4; F4). Нажимаем кнопку «Готово».

Указать номер ячейки можно и вручную, но проще нажать на неё
Скриншот: Skillbox

Результат работы функции СЦЕПИТЬ
Скриншот: Skillbox

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

Добавляем в получившуюся функцию после значения каждого аргумента запятую и пробел, в таком виде, вместе с кавычками: «, «;

Устанавливаем курсор здесь, добавляем разделитель между данными ячеек
Скриншот: Skillbox

Получаем функцию в таком виде: fx=СЦЕПИТЬ(«год выпуска «;B4;», объем «;C4;», коробка передач «;D4;», привод «;E4;», руль «;F4). Нажимаем Enter.

Так значение объединённых ячеек выглядит визуально приятнее — появились запятые и пробелы
Скриншот: Skillbox

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

Для нашего примера можно преобразовать функцию к такому виду: fx=СЦЕПИТЬ(«год выпуска «;B4;», объем «;C4;», коробка передач «;D4;», привод «;E4;», руль «;F4). Главное — не забывать указывать все необходимые пробелы, которые должны быть между объединёнными данными.

Теперь итоговое значение объединённых ячеек содержит в себе ещё и заголовки
Скриншот: Skillbox

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

Так выглядит результат. В этом виде значения ячеек можно забирать в квитанции
Скриншот: Skillbox

Для чего подойдёт. Для объединения больших диапазонов ячеек с сохранением всех данных.

Особенности метода. Можно указать сразу весь диапазон ячеек. Но функция, как и СЦЕПЛЕНИЕ, склеит их: значения не будут ничем разделены.

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

Как сделать. По аналогии с функцией СЦЕПЛЕНИЕ выделим ячейку, в которую функция будет собирать значения. Откроем окно для построения функций и найдём функцию СЦЕП.

Так выглядит окно для ввода аргументов функции СЦЕП
Скриншот: Skillbox

Появляется окно построителя формул. В нём аргумент «Текст 1» — диапазон ячеек, который нужно объединить. В нашем случае выделяем все ячейки с характеристиками автомобилей и жмём «Готово».

Выбранное значение диапазона переносится в построитель формул и одновременно появляется в формуле строки ссылок: fx=СЦЕП(B4:F4).

Указываем диапазон ячеек, которые хотим объединить, и нажимаем сюда
Скриншот: Skillbox

Результат работы функции СЦЕП
Скриншот: Skillbox

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

Вернёмся в окно построения функции и поменяем аргументы на такой вид: «Текст1» → значение ячейки «Год выпуска», «Текст2» → «, «, «Текст3» → значение ячейки «Объём», «Текст4» → «, «. И так далее до последней ячейки, которую нужно объединить: чередуем значения ячеек и аргумент-разделитель.

Затем нажимаем «Готово». Итоговое значение функции принимает вид: fx=СЦЕП(B4;», «;C4;», «;D4;», «;E4;», «;F4), и данные ячейки разделяются запятыми и пробелами.

В полях аргументов функции чередуем значения ячеек и разделитель между ними
Скриншот: Skillbox

Теперь данные в объединённой ячейке разделены между собой
Скриншот: Skillbox

Чтобы добавить не только запятые с пробелами, но и слова, нужно дописать их в промежуточных аргументах функции. Сделаем это на нашем примере. Вернёмся в построитель формул и заменим данные: 
«Текст2» → «, объём «, «Текст4» → «, коробка передач «, «Текст6» → «, привод «, «Текст8» → «, руль «.

Заменяем данные промежуточных аргументов
Скриншот: Skillbox

В итоге функция выдаёт значение, где все данные разделены между собой дополнительными словами. Формула при этом принимает вид: fx=СЦЕП (B4;”, объём “; C4;”, коробка передач “; D4;”, привод “; E4;”, руль “; F4).

Функция объединила данные ячеек и внесла между ними дополнительные слова
Скриншот: Skillbox

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

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

Так выглядит результат для всей таблицы
Скриншот: Skillbox

Для чего подойдёт. Для объединения больших диапазонов ячеек с сохранением данных.

Особенности метода. Можно указать сразу весь диапазон ячеек и разделитель для них. При этом значение самого разделителя будет одним для всех объединённых ячеек. Если нужно изменить разделитель для части ячеек — делать это придётся вручную в строке ссылок.

Как сделать. Выделим ячейку, в которую функция будет собирать значения. Откроем окно для построения функций и найдём функцию ОБЪЕДИНИТЬ.

Так выглядит окно для ввода аргументов функции ОБЪЕДИНИТЬ
Скриншот: Skillbox

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

«Разделитель» — значение, которое появится между ячейками после объединения. Разделитель будет одинаковым для всех ячеек.

В нашем случае в качестве разделителя добавим запятую и пробел: «, «.

Разделитель добавить между всеми значениями ячеек запятую и пробел
Скриншот: Skillbox

«Пропускать_пустые» — условное значение, которое определит, что функция будет делать с пустыми ячейками в диапазоне:

  • Если нужно, чтобы пустые ячейки игнорировались и разделители не дублировались в них, вводим 1 (ИСТИНА).
  • Если нужно, чтобы пустые ячейки обязательно учитывались, вводим 0 (ЛОЖЬ).

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

С этим значением аргумента при построении функции пустые ячейки будут игнорироваться
Скриншот: Skillbox

«Текст1» — значения ячеек, которые нужно объединить. Можно выбирать одним диапазоном или вводить каждое значение по отдельности.

В нашем примере выберем все ячейки одним диапазоном.

Можно выбирать каждую ячейку по отдельности или сразу весь диапазон
Скриншот: Skillbox

Итоговая функция в строке ссылок принимает вид: fx=ОБЪЕДИНИТЬ(«, «;1;B4:F4).

Нажимаем кнопку «Готово» и растягиваем полученную ячейку на все остальные строки.

Результат работы функции ОБЪЕДИНИТЬ
Скриншот: Skillbox

В итоге функция объединила данные всех ячеек и сразу разделила их запятыми и пробелами. С одной стороны, это удобно: не пришлось вводить разделители несколько раз. С другой стороны, функция позволила ввести только одно значение разделителя. Если нужно дополнить значения дополнительным текстом, разным для всех ячеек, — придётся делать это вручную через построитель формул. Как это сделать, можно посмотреть в предыдущей инструкции для функции СЦЕП.

Какие методы объединения ячеек есть в «Google Таблицах»? В них есть кнопка «Объединить», которая работает по аналогии с Excel. Также есть функция СЦЕПИТЬ, но нет окна построителя формул — прописывать значения придётся вручную. Если вам нужен разделитель в виде запятой и пробела, то функция будет выглядеть так: fx=СЦЕПИТЬ(C4;», «;D4).

Научитесь: Excel + Google Таблицы с нуля до PRO
Узнать больше

Объединение текста из двух или нескольких ячеек в одну

Данные из нескольких ячеек можно объединить в одну с помощью символа «амперсанд» (&) или функции СЦЕП.

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Объединение данных с помощью символа «амперсанд» (&)

  1. Выделите ячейку, в которую вы хотите вставить объединенные данные.

  2. Введите = (знак равенства) и выберите первую ячейку, которую нужно объединить.

  3. Введите символ & и пробел, заключенный в кавычки.

  4. Выберите следующую ячейку, которую нужно объединить, и нажмите клавишу ВВОД. Пример формулы: =A2&» «&B2.

Объединение данных с помощью функции СЦЕП

  1. Выделите ячейку, в которую вы хотите вставить объединенные данные.

  2. Введите выражение = СЦЕП(.

  3. Выберите первую ячейку, которую нужно объединить.

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

  4. Введите закрывающую скобку в конце формулы и нажмите клавишу ВВОД. Пример формулы: =CONCAT(A2, » Семья»).

Дополнительные сведения

Подключитесь к эксперту. Учитесь у живых инструкторов.

См. также

Функция ОБЪЕДИНИТЬ

Функция CONCAT

Объединение и отмена объединения ячеек

СЦЕПИТЬ

Рекомендации, позволяющие избежать появления неработающих формул

Автоматическая нумерация строк

Нужна дополнительная помощь?

Выборка значений из столбцов в одну ячейку через запятую

glebanidze

Дата: Среда, 22.05.2019, 14:06 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Добрый день! Уважаемые знатоки! Подскажите пожалуйста, как собрать из столбца по условию (другой столбец) все значения в одну ячейку с разделителем «,»
Файл во вложении.
Формула должна просматривать столбец А и пока не сменится значение, все данные из массива столбцов B,C,D скомпилировать в одну строку, но по ячейкам.
То есть должна остаться одна строка с ячейками «цена, ссылки на фото через запятую в одной ячейке, комментарий»…

К сообщению приложен файл:

5808356.xlsx
(68.1 Kb)

Сообщение отредактировал glebanidzeСреда, 22.05.2019, 14:53

 

Ответить

sboy

Дата: Среда, 22.05.2019, 16:00 |
Сообщение № 2

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2566


Репутация:

724

±

Замечаний:
0% ±


Excel 2010

Добрый день.
Вариант на Power Query

К сообщению приложен файл:

0855500.xlsx
(24.6 Kb)


Яндекс: 410016850021169

 

Ответить

glebanidze

Дата: Среда, 22.05.2019, 16:48 |
Сообщение № 3

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

sboy, Благодарю, буду разбираться!

 

Ответить

Светлый

Дата: Среда, 22.05.2019, 17:04 |
Сообщение № 4

Группа: Друзья

Ранг: Старожил

Сообщений: 1742


Репутация:

479

±

Замечаний:
0% ±


Excel 2013, 2016

И формульное решение. Уникальные. Массивная формула:

Код

=ИНДЕКС(A:A;МИН(ЕСЛИ(СЧЁТЕСЛИ(E$1:E1;A$2:A$99)=0;СТРОКА($2:$99))))&»»

и сцепленные данные (не более 10строк):

Код

=ВПР(E2;A:C;3;)&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=1;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+1))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=2;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+2))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=3;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+3))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=4;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+4))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=5;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+5))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=6;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+6))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=7;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+7))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=8;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+8))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=9;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+9))


Программировать проще, чем писать стихи.

 

Ответить

glebanidze

Дата: Среда, 22.05.2019, 17:28 |
Сообщение № 5

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Светлый, Благодарю, вот формульное решение более актуально!

 

Ответить

glebanidze

Дата: Пятница, 24.05.2019, 21:06 |
Сообщение № 6

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Светлый, подскажите пожалуйста, а как сделать больше 10 строк… У меня там ведь бывают портянки по несколько тысяч строк… Я вообще голову сломал. У нас работа стоит из-за этой формулы(

 

Ответить

glebanidze

Дата: Пятница, 24.05.2019, 21:10 |
Сообщение № 7

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

sboy, у меня на маке нету power query ((( может, знаете как формулой сделать это? Ну очень нужно… Голову сломал((((
пробовал так: =ЕСЛИ(B3=B2;F2&»,»&F3&»,»&F4&»,»&F5&»,»&F6&»,»&F7&»,»&F8&»,»&F9&»,»&F10;F2)
но проблема в том, что он так берет 10 строк, а их бывает и 3 и 17… какой вот формулой во второй части сделать так, чтобы он останавливался когда b3 не равно b2

 

Ответить

Светлый

Дата: Суббота, 25.05.2019, 08:57 |
Сообщение № 8

Группа: Друзья

Ранг: Старожил

Сообщений: 1742


Репутация:

479

±

Замечаний:
0% ±


Excel 2013, 2016

После фрагмента

Код

&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=9;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+9))

вставить

Код

&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=10;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+10))

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

Код

=ЕСЛИ(E2=»»;»»;ВПР(E2;A:C;3;)&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=1;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+1))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=2;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+2))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=3;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+3))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=4;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+4))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=5;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+5))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=6;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+6))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=7;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+7))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=8;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+8))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=9;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+9))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=10;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+10))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=11;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+11))&ЕСЛИ(СЧЁТЕСЛИ(A:A;E2)<=12;»»;», «&ИНДЕКС(C:C;ПОИСКПОЗ(E2;A:A;)+12)))


Программировать проще, чем писать стихи.

Сообщение отредактировал СветлыйСуббота, 25.05.2019, 09:07

 

Ответить

glebanidze

Дата: Суббота, 25.05.2019, 09:00 |
Сообщение № 9

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Светлый, Благодарю, я так и думал, но у меня несколько тысяч строк таблица. это же нереально такую формулу сделать…

 

Ответить

Светлый

Дата: Суббота, 25.05.2019, 09:20 |
Сообщение № 10

Группа: Друзья

Ранг: Старожил

Сообщений: 1742


Репутация:

479

±

Замечаний:
0% ±


Excel 2013, 2016

это же нереально такую формулу сделать…

от большого количества строк только время работы будет зависеть. Для каждого уникального может сцеплять как в сообщении №8 до 13 строк.


Программировать проще, чем писать стихи.

 

Ответить

glebanidze

Дата: Суббота, 25.05.2019, 09:41 |
Сообщение № 11

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Светлый, Ну мне достаточно и чтобы 10 строк сцеплял, хотя их бывает и по 20 с одинаковым значением столбца А. НО! Формула работает только на первые 10 уникальных значений столбца А. А потом не работает…

К сообщению приложен файл:

4619641.xlsx
(56.2 Kb)

 

Ответить

китин

Дата: Суббота, 25.05.2019, 09:48 |
Сообщение № 12

Группа: Модераторы

Ранг: Экселист

Сообщений: 6973


Репутация:

1063

±

Замечаний:
0% ±


Excel 2007;2010;2016

glebanidze, такую формулу в версии до 2016 без макросов не создать. это или UDF СцепитЕсли или ставить 2016 (или 365 не помню точно) там это уже вшито


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852

 

Ответить

Светлый

Дата: Суббота, 25.05.2019, 11:58 |
Сообщение № 13

Группа: Друзья

Ранг: Старожил

Сообщений: 1742


Репутация:

479

±

Замечаний:
0% ±


Excel 2013, 2016

Формула работает только на первые 10 уникальных значений столбца А

Тогда просто увеличить интервал в формуле уникальных:

Код

=ИНДЕКС(A:A;МИН(ЕСЛИ(СЧЁТЕСЛИ(E$1:E1;A$2:A$9999)=0;СТРОКА($2:$9999))))&»»

Десять тысяч строк хватит?


Программировать проще, чем писать стихи.

 

Ответить

glebanidze

Дата: Суббота, 25.05.2019, 12:16 |
Сообщение № 14

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Светлый, вот в этом и проблема. я так делал и у меня везде вычисляется только одно первое входящее значение и выдается ошибка по ячейке «несогласованная формула» ((( полтергейст какой-то. :'(

 

Ответить

glebanidze

Дата: Суббота, 25.05.2019, 12:17 |
Сообщение № 15

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

китин, Благодарю, только у меня вообще никак не выходит этот макрос сделать… Читаю руководства как UDF этот вставить…

 

Ответить

glebanidze

Дата: Суббота, 25.05.2019, 13:52 |
Сообщение № 16

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

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

Код

=СцепитьЕсли(A:A;A3=A2;C:C;»,»)

. Помогите пожалуйста, что не так. Ячейка пустая…

К сообщению приложен файл:

0872996.xls
(97.0 Kb)

Сообщение отредактировал glebanidzeСуббота, 25.05.2019, 14:01

 

Ответить

Светлый

Дата: Суббота, 25.05.2019, 15:32 |
Сообщение № 17

Группа: Друзья

Ранг: Старожил

Сообщений: 1742


Репутация:

479

±

Замечаний:
0% ±


Excel 2013, 2016

только одно первое входящее

Формула массива, вводится одновременным нажатием Ctrl+Shift+Enter.


Программировать проще, чем писать стихи.

 

Ответить

RAN

Дата: Воскресенье, 26.05.2019, 11:47 |
Сообщение № 18

Группа: Друзья

Ранг: Экселист

Сообщений: 5645

1. UDF нужно вставлять не в UserForm, а в стандартный модуль.
2. Огрызок корежит кодировку. Замените кирилицу на латиницу.


Быть или не быть, вот в чем загвоздка!

 

Ответить

glebanidze

Дата: Понедельник, 27.05.2019, 19:52 |
Сообщение № 19

Группа: Пользователи

Ранг: Новичок

Сообщений: 16


Репутация:

0

±

Замечаний:
0% ±


Excel для Mac

Светлый, Спасибо вам большое! Ваши формулы работают и помогли мне очень сильно!

 

Ответить

Like this post? Please share to your friends:
  • Преобразовать ссылки в числа excel
  • Преобразовать ссылки в значения excel
  • Преобразовать ссылки в гиперссылки excel
  • Преобразовать publisher в word онлайн
  • Преобразовать скан в word онлайн