Прескочи на основното съдържание

Как да комбинирате няколко клетки в клетка с интервал, запетаи или други разделители в Excel?

Автор: Слънце Последна промяна: 2020-04-23

Когато комбинирате клетките от множество колони или редове в една клетка, комбинираните данни може да не бъдат разделени от нищо. Но ако искате да ги разделите с определени знаци, като интервал, запетаи, точка и запетая или други, как можете да го направите? Този урок ще ви представи някои методи.


Свържете ред или колона от клетки в една клетка с интервал, запетая или други разделители, като използвате формули

В Excel можете да използвате формулите по-долу, за да комбинирате ред от клетки или колона от клетки в една клетка.


Метод A: Използвайте оператора "&", за да комбинирате клетки

В Excel можете да използвате оператора "&", за да комбинирате различни текстови низове или стойности на клетки.

Моля, въведете формулата по-долу, за да обедините клетките в множество колони: (разделете комбинираните резултати с интервал, можете да замените празното място с други разделители, ако имате нужда.)

=A2&" "&B2&" "&C2

След това плъзнете манипулатора за попълване надолу към клетките, към които искате да приложите тази формула, и данните от различни колони са обединени в една клетка, вижте екранната снимка:

  • Съвет:
  • В горната формула можете да замените празните места между операторите & с други разделители, като напр =A2&"-"&B2&"-"&C2
  • Ако трябва да комбинирате стойностите на клетките от множество редове, просто трябва да промените препратката към клетката, както следва: =A2&" "&A3&" "&A4&" "&A5&" "&A6&" "&A7

Метод B: Използвайте функцията Concatenate, за да комбинирате клетки

Функцията Concatenate в Excel също се използва за свързване на множество текстови низове или стойности на клетки в една клетка.

Моля, въведете или копирайте формулата по-долу в празна клетка:

=CONCATENATE(A2, "-", B2, "-", C2)

След това плъзнете манипулатора за попълване надолу към клетките, към които искате да приложите тази формула, ще получите следния резултат:

  • Съвет:
  • В горната формула можете да замените знака „-“ с други разделители, като напр =CONCATENATE(A2, ";", B2, ";", C2)
  • Ако трябва да комбинирате стойностите на клетките от множество редове, просто трябва да промените препратката към клетката, както следва: =CONCATENATE(A2, "-", A3, "-", A4, "-", A5, "-", A6, "-", A7)

Метод C: Използвайте функцията Textjoin за комбиниране на клетки

Ако имате Excel 365 и по-нови версии, има нова функция-Textjoin, тази функция също може да ви помогне да комбинирате множество клетки в една клетка.

Въведете или копирайте следната формула в празна клетка:

=TEXTJOIN(",",TRUE,A2:C2)

След това плъзнете манипулатора за попълване, за да приложите тази формула към други клетки, вижте екранната снимка:

  • Съвети:
  • В горната формула можете да замените знака „,“ с други разделители, като напр =TEXTJOIN("/",TRUE,A2:C2)
  • За да комбинирате стойностите на клетките от множество редове, просто трябва да промените препратката към клетката по следния начин: =TEXTJOIN(",",TRUE,A2:A7)
  • Този TEXTJOIN също може да комбинира диапазон от клетки в една клетка с разделител, както следва: =TEXTJOIN(",",TRUE,A2:C7)

Свържете ред, колона или диапазон от клетки в една клетка с определен разделител

Kutools за Excel поддържа мощна функция-Комбинирам което може да ви помогне да обедините всички данни въз основа на редове, колони или диапазон от клетки в един запис, без да губите данни. Моля, вижте демонстрацията по-долу.    Щракнете, за да изтеглите Kutools за Excel!


Свързване на ред или колона от клетки в една клетка с интервал, запетая или други разделители чрез дефинирана от потребителя функция

В Excel можете също да създадете дефинирана от потребителя функция за комбиниране на клетки от ред или колона в една клетка с интервали или определени знаци.

1. Задръжте ALT + F11 клавиши на клавиатурата за отваряне a Microsoft Visual Basic за приложение прозорец.

2. Щракнете Поставете > Модулии копирайте VBA в модула.

VBA: Комбинирайте клетки въз основа на ред или колона в една със специфичен разделител:

Function Combine(WorkRng As Range, Optional Sign As String = "~") As String
Dim Rng As Range
Dim OutStr As String
For Each Rng In WorkRng
    If Rng.Text <> " " Then
        OutStr = OutStr & Rng.Text & Sign
    End If
Next
Combine = Left(OutStr, Len(OutStr) - 1)
End Function

тип: В горния скрипт "Function Combine(WorkRng As Range, Optional Sign As String = "~") As String", разделителят"~" е посочено за отделяне на комбинирания резултат, можете да го промените, за да отговаря на вашите нужди.

3. След това, моля, въведете формула =Combine(A2:C2) в празна клетка и след това плъзнете манипулатора за запълване върху диапазона, към който искате да приложите тази формула, всички клетки в реда ще бъдат комбинирани в клетка с тирета. Вижте екранна снимка:

Съвети: С горната функция, дефинирана от потребителя, можете също да комбинирате стойности на клетки въз основа на колона, просто трябва да въведете тази формула =Combine(A2:A7) за да получите обединените данни, както ви е необходимо.


Свържете ред или колона от клетки в една клетка с нов ред, като използвате формули

Понякога може да искате да използвате знака за нов ред, за да разделите свързания текстов низ, обикновено CHAR(10) ще върне знака за нов ред. Тук можете да използвате следните методи за решаване на тази задача:


Метод A: Използвайте функцията Concatenate, за да комбинирате клетки с нов ред

Тук можете да комбинирате функцията за свързване със знака Char(10) заедно, за да получите обединения резултат, който е разделен с нов ред.

1. Моля, въведете или копирайте следната формула:

=CONCATENATE(A2,CHAR(10),B2,CHAR(10),C2)

След това плъзнете манипулатора за попълване надолу към клетките, към които искате да приложите тази формула, и ще получите следния резултат:

2. След това трябва да щракнете Начало > Обвиване на текст за да форматирате клетките и след това ще получите желания резултат:

Съвети: За да комбинирате стойностите на клетките от множество редове, просто трябва да промените препратката към клетката, както следва: =CONCATENATE(A2,CHAR(10),A3,CHAR(10),A4,CHAR(10),A5,CHAR(10),A6,CHAR(10),A7)


Метод B: Използвайте функцията Textjoin за комбиниране на клетки с нов ред (Excel 365 и по-нови версии)

Може горната формула да е малко трудна, ако има няколко клетки, които трябва да бъдат комбинирани, така че функцията Textjoin може да се справи с тази задача бързо и лесно.

Моля, въведете или копирайте формулата по-долу в празна клетка:

=TEXTJOIN(CHAR(10),TRUE,A2:C2)

След като получите комбинираните резултати, моля, не забравяйте да форматирате клетките за формула, за да Обвиване на текст, вижте екранна снимка:

Съвети: За да комбинирате стойностите на клетките от множество редове, просто трябва да промените препратката към клетката, както следва: =TEXTJOIN(CHAR(10),TRUE,A2:A7)


Свържете ред, колона или диапазон от клетки в една клетка с определен разделител, като използвате чудесна функция

Ако сте досадни с горните формули и код, тук мога да препоръчам полезен инструмент - Kutools за Excel, Със своята Комбинирам можете бързо да комбинирате клетъчни стойности по ред, колона или диапазон в една клетка.

Съвет:За да приложите това Комбинирам функция, първо трябва да изтеглите Kutools за Excelи след това приложете функцията бързо и лесно.

След инсталиране Kutools за Excel, моля, направете следното:

1. Изберете стойности на клетка от диапазон, които искате да комбинирате в клетка.

2. Моля, приложете тази функция, като щракнете Kutools > Обединяване и разделянеКомбинирайте редове, колони или клетки без загуба на данни. Вижте екранна снимка:

doc комбиниране на данни със запетаи 9 1

3. В изскачащия диалогов прозорец, моля, посочете операциите, от които се нуждаете, както е показано на следната екранна снимка:

4, След това кликнете върху Ok, ще получите резултата, както е показано на екранната снимка по-долу:

1). Комбинирайте стойностите на клетките в една клетка за всеки ред:

2). Комбинирайте стойностите на клетките в една клетка за всяка колона:

3). комбинирайте диапазон от стойности на клетки в една клетка:

Щракнете, за да изтеглите Kutools за Excel и безплатна пробна версия сега!


Още статии за относително комбиниране на редове и колони:

  • Обединяване и комбиниране на редове без загуба на данни в Excel
  • Excel запазва данните само в най-горната лява клетка, ако приложите командата „Обединяване и центриране“ (раздел Начало > Обединяване и центриране в панела за подравняване), за да обедините редове от данни в Excel. Потребителите трябва да използват друг метод за обединяване на множество редове с данни в един ред, без да изтриват данни.
  • Комбинирайте дублиращи се редове и сумирайте стойностите в Excel
  • В Excel винаги може да срещнете този проблем, когато имате диапазон от данни, който съдържа някои дублиращи се записи, и сега искате да комбинирате дублиращите се данни и да сумирате съответните стойности в друга колона, както са показани следните екранни снимки. Как бихте могли да разрешите този проблем?
  • Комбинирайте дата и час в една клетка в Excel
  • Има две колони в работен лист, едната е датата, другата е часът, както е показано по-долу, има ли някакъв начин бързо да комбинирате тези две колони в една и да запазите формата на часа?
  • Конкатенираните клетки игнорират или пропускат празни места в Excel
  • Функцията Concatenate на Excel може да ви помогне бързо да комбинирате множество стойности на клетки в една клетка, ако в избраните клетки има няколко празни клетки, тази функция ще комбинира и празните. Но понякога просто искате да свържете клетки с данни и да пропуснете празните клетки, как бихте могли да го завършите в Excel?

  • Супер Формула Бар (лесно редактиране на няколко реда текст и формула); Оформление за четене (лесно четене и редактиране на голям брой клетки); Поставяне във филтриран диапазон...
  • Обединяване на клетки/редове/колони и съхраняване на данни; Съдържание на разделени клетки; Комбинирайте дублиращи се редове и сума/средно... Предотвратяване на дублиращи се клетки; Сравнете диапазони...
  • Изберете Дублиран или Уникален редове; Изберете Празни редове (всички клетки са празни); Super Find и Fuzzy Find в много работни тетрадки; Произволен избор...
  • Точно копие Множество клетки без промяна на референтната формула; Автоматично създаване на препратки към множество листа; Вмъкване на куршуми, квадратчета за отметка и други...
  • Любими и бързо вмъкнати формули, диапазони, диаграми и снимки; Шифроване на клетки с парола; Създаване на пощенски списък и изпращайте имейли...
  • Извличане на текст, Добавяне на текст, Премахване по позиция, Премахване на пространството; Създаване и отпечатване на междинни суми за пейджинг; Конвертиране на съдържание и коментари между клетки...
  • Супер филтър (запазване и прилагане на филтърни схеми към други листове); Разширено сортиране по месец/седмица/ден, честота и други; Специален филтър с удебелен шрифт, курсив...
  • Комбинирайте работни тетрадки и работни листове; Обединяване на таблици въз основа на ключови колони; Разделете данните на няколко листа; Пакетно конвертиране на xls, xlsx и PDF...
  • Групиране на обобщена таблица по номер на седмицата, ден от седмицата и други... Показване на отключени, заключени клетки с различни цветове; Маркирайте клетки, които имат формула/име...
kte tab 201905
  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
officetab отдолу
Comments (34)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I would like to know if I have a list of people with their information in different cells in one column but different row how to combine them in one cell For e,g I have one person teaching English, math and science and his name is repeated in one column but the courses are in different rows so I want to combine all the courses in one cell for that teacher. if I have 50 teachers I need to have all the courses that the teacher is teaching in one cell.
This comment was minimized by the moderator on the site
Hi, Lavina,
Do you mean to combine multiple cell values in a column based on duplicate names in another column as below screenshot shown:

You can insert a screenshot to make your problem more intuitive.
This comment was minimized by the moderator on the site
This is exactly what I'm looking for. Is this problem solved?
This comment was minimized by the moderator on the site
Hi, Piotr,
To solve this problem, maybe the following article can help you, please check it:
https://www.extendoffice.com/documents/excel/2723-excel-concatenate-based-on-criteria.html
This comment was minimized by the moderator on the site
VBA doesn't work for me, excel 2016.
This comment was minimized by the moderator on the site
Working on trying to get your VBA code to work however I keep getting a #NAME? error. How do I fix this? I've used this code before and it worked wonderfully but now it gives me an error.
This comment was minimized by the moderator on the site
But it is not working for large data. I have around 50000 rows to combine in single cell.
This comment was minimized by the moderator on the site
415xxe 5687sdc sa4567 415xxe 5687sdc sa4567 415xxe 5687sdc sa4567 415xxe 5687sdc sa4567 I need to separate these in different columns and then put a comma behind the last column
This comment was minimized by the moderator on the site
The VBA code does not work I get an error Microsoft Visual Basic for Applications - Compile error: Syntax error then the line "If Rng.Text "," Then" is highlighted in blue and on the top highlighted in yellow it says this "function combine(workrng as range, optional sign as string = ",") as string I am using excel 2016 on a pc
This comment was minimized by the moderator on the site
I genuinely enjoy studying on this website, it holds good content. Never fight an inanimate object. by P. J. O'Rourke. dfdkbafbadfkagdd
This comment was minimized by the moderator on the site
how to combine 2 cell with space in between with 2 independent cell format. Eg. If one cell is Red digits & other cell has digits in green, it should combine with Red & green digits.
This comment was minimized by the moderator on the site
The VBA code worked really well thanks. My only issue is that it is including blanks so that my combined output ends up looking like this: "test, test, , , , , , test" How could I get it to exclude blank cells within the range?
This comment was minimized by the moderator on the site
If you found the answer let me now please as well.
This comment was minimized by the moderator on the site
instead of the line in the original code:

If Rng.Text <> ", " Then
OutStr = OutStr & Rng.Text & Sign


you need to add a "test" to determine if the cell is empty followed by the statement above which adds the delimiter. Delete the above 2 lines and then Copy the following code in and your COMBINE function will remove the blanks from your list.

If IsEmpty(Rng.Value) = True Then

OutStr = OutStr & ""

ElseIf Rng.Text <> ", " Then

OutStr = OutStr & Rng.Text & Sign
This comment was minimized by the moderator on the site
The VBA macro worked very well after I adjusted for the my cell locations and I was able to add a space after the comma for a better display of the data.
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations